Задать вопрос
@Nentra

Зачем делать проверку подключения модуля, если я итак его хочу подключить?

Зачем делать проверку подключения модуля, если я итак его хочу подключить?
if(CModule::IncludeModule("socialnetwork"))
			{ 
				//здесь можно использовать функции классов модуля socialnetwork
			}


Если я подключу модуль socialnetwork вот такт
CModule::IncludeModule("socialnetwork")
Всё сломается, престанет работать и начнет жутко тормозить?
  • Вопрос задан
  • 56 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    Интегратор Битрикс24
    4 месяца
    Далее
  • Академия Eduson
    Управление цифровой трансформацией
    8 месяцев
    Далее
  • Академия Eduson
    Коммерческий директор
    4 месяца
    Далее
Решения вопроса 1
@Akela_wolf
Extreme Programmer
Открываем документацию и видим:
Возвращает "true", если модуль установлен, иначе - "false".

Иначе говоря, вызов этой функции не гарантирует что модуль будет успешно подключен. И вот именно для того чтобы убедиться что он подключился и добавляют проверку.

В вашем примере все будет работать пока все хорошо. Но как только при подключении модуля возникнет ошибка - начнутся спецэффекты, связанные с вызовом несуществующих функций, обращениями к несуществующим классам и т.п. В то время как в варианте с if этот фрагмент просто отключится и все.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
НТЦ РЕДУКТОР Санкт-Петербург
от 100 000 ₽
AIINS Санкт-Петербург
от 150 000 до 200 000 ₽
Сбер Москва
от 200 000 до 300 000 ₽