Можно ли не использовать проверку на определение функции if function_exists?

12
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
176

Всем привет!

Часто встречаю в коде шаблона проверку на то есть ли такая функция или нет в виде -

if(function_exists('func')) func();

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

Заранее всем спасибо за ответы!


Сергей
На сайте с 01.10.2010
Offline
144
#1
Напрямую вызывать можно.
Вы знаете, я и сам немного... вебмастер
S
На сайте с 30.09.2016
Offline
469
#2
Dmitriy_2014 :
можно ли не использовать эту проверку
Можно. Разрешаю. И не только перед непосредственным вызовом.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Sly32
На сайте с 29.03.2012
Offline
303
#3
Dmitriy_2014 :
можно ли не использовать эту проверку,

Советую прочитать пару книг по алгоритмам программирования, архитектуре приложений - тогда такие вопросы вам даже в голову не придут

S
На сайте с 30.09.2016
Offline
469
#4
Много будешь читать – императором не станешь. (С)
Mik Foxi
На сайте с 02.03.2011
Offline
1076
#5
Если знаете что функция есть то проверять ее не обязательно. А если ее вдруг не окажется - увидите ошибки в браузере или в логах и поставите недостающую функцию.
Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#6
foxi #:
Если знаете что функция есть то проверять ее не обязательно. А если ее вдруг не окажется - увидите ошибки в браузере или в логах и поставите недостающую функцию.

Так я вот и думаю, нужна ли эта проверка если я точно знаю, что эта функция работает и будет работать постоянно, зачем она… Мне кажется это делают разработчики тем и шаблонов чтобы если чё не было ошибки и функция просто не вызывалась, но мне это зачем если я точно знаю, что и зачем вызываю текущей функцией…

Было бы интересно узнать сильно ли напрягается интерпретатор при сравнении есть эта функция или нету этой функции. Ну то есть лучше вызывать напрямую или без разницы можно оставить и сравнение.
SeVlad
На сайте с 03.11.2008
Offline
1609
#7
Dmitriy_2014 #:
Мне кажется это делают разработчики тем и шаблонов чтобы если чё не было ошибки и функция просто не вызывалась, но мне это зачем если я точно знаю, что и зачем вызываю текущей функцией…

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

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#8

Я там вначале не досказал…

В целом о чем я:

Вот есть допустим плагин хлебных крошек для WordPress Breadcrumb NavXT, авторы говорят включи плагин и вставь в свой шаблон этот код:

<?php if(function_exists('bcn_display'))

{

bcn_display();

}?>

И будут у тебя хлебные крошки, ну это к примеру. Они рекомендуют выполнять эту проверку if function_exists.

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

<?php bcn_display(); ?>
S
На сайте с 30.09.2016
Offline
469
#9
Dmitriy_2014 #:
знаю, что если плагин включен
Здесь ключевое слово "если". Походу, нихрена ты не понимаешь в алгоритмах разработки.
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#10
Sitealert #:
Здесь ключевое слово "если". Походу, нихрена ты не понимаешь в алгоритмах разработки.
Так я и не разработчик, я просто любитель, и да не шарю в алгоритмах, но знаешь ты походу прав создатели плагина то разработчики и шарят в алгоритмах и именно для этого делают эту проверку предостерегая недалеких пользователей таких как я, но по факту я думаю это лишняя проверка (Для меня.). Вы бы лучше подсказал сильно ли она влияет на скорость с ней или без неё?
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий