Comments 11
Небольшая ошибка в первом куске кода.
Fatal error: Cannot redeclare end() in .../test.php on line 3
UFO just landed and posted this here
То, что вы описали, часто используется в компонентах Joomla например
Компонент должен работать и в 1.5 и в 2.5, но в 2.5 удалили функцию, которая была в 1.5 или ее переименовали, и она используется в этом компоненте
Для этого и пишутся там такие хаки, которые по требованию создают нужную функцию
Ничего в этом хорошего нет, но это ведь legacy code :)
Компонент должен работать и в 1.5 и в 2.5, но в 2.5 удалили функцию, которая была в 1.5 или ее переименовали, и она используется в этом компоненте
Для этого и пишутся там такие хаки, которые по требованию создают нужную функцию
Ничего в этом хорошего нет, но это ведь legacy code :)
Подобный код часто встречается в библиотеках мечтающих о mbstring, в автолоадере проверяется наличие нужных mb_* функций и если что-то отсутствует — объявляется свой костылёк
Должен покаяться: применял такую практику для array_map, usort и т.д., когда еще не было анонимных функций.
После их введения о таком забыл.
P.S.
Речь только о РНР.
После их введения о таком забыл.
P.S.
Речь только о РНР.
Как каз сегодня пришлось писать curl_reset внутри функции класса что бы заработал сторонний компонент. Что удобно, функция создается только в том случае, если не была определена. Так что функционал должен присутствовать.
Sign up to leave a comment.
Одна из особенностей PHP, связанная с методами и функциями