Я где-то читал и не помню где, тогда echoэто более эффективный способ вывода данных print.
Почему ядро Drupal использует printтак много? Есть ли какая-то особая причина этого?
Я где-то читал и не помню где, тогда echoэто более эффективный способ вывода данных print.
Почему ядро Drupal использует printтак много? Есть ли какая-то особая причина этого?
Ответы:
echoтолько быстрее в академической среде. Разница очень незначительная. Быстрый тест, который я только что сделал: время выборки одной строки из таблицы с более чем 2000 узлами составляет 1 единицу.
Чтобы получить улучшение на 1 единицу, мне нужно заменить около 3.700.000 (более 3 миллионов) printоператоров на echo. Другими словами, если вы хотите улучшить производительность, вряд ли стоит начинать.
То, что printможет быть использовано в более широком диапазоне случаев echo, первое имеет некоторые преимущества. Это оставляет вам три варианта:
printechoгде это возможно, и используйтеprintechoвсегда и рефакторинг вашего кода, если echoне может быть использован, чтобы использовать егоДрупал дефолт по первому.
Чтобы ответить на ваш актуальный вопрос о том, почему это было выбрано: это не так. Это просто выросло таким образом.
if (! print some_method() ) {print some_other_method()}. Так как print возвращает TRUE, если оно действительно что-то напечатало. Эхо ничего не возвращает, поэтому тоже быстрее. Другой пример, который вы увидите, находится return print $somevalueв конце метода возврата статуса.