Секция CDATA требуется, если вам нужен документ для анализа в формате XML (например, когда страница XHTML интерпретируется как XML) , и вы хотите иметь возможность писать литералы i<10
и a && b
вместо i<10
и a && b
, поскольку XHTML будет анализировать код JavaScript как проанализированные символьные данные, а не по умолчанию. Это не проблема со сценариями, которые хранятся во внешних исходных файлах, но для любого встроенного JavaScript в XHTML вы , вероятно, хотите использовать раздел CDATA.
Обратите внимание, что многие XHTML страницы никогда не должны анализироваться как XML, и в этом случае это не будет проблемой.
Для хорошей записи по этому вопросу см. http://javascript.about.com/library/ blxhtml.htm
Это невозможно в PHP - как вы сказали, вы можете получить текущий обработчик ошибок при вызове set_error_handler и восстановить его с помощью restore_error_handler
Да, есть способ узнать обработчик ошибок, не устанавливая новый. Это не одна нативная функция php. но его эффекты именно то, что вам нужно.
Суммируя все предложения метода замены @aurbano, @AL the X, @Jesse и @ Dominic108, можно выглядеть следующим образом
function get_error_handler(){
$handler = set_error_handler(function(){});
restore_error_handler();
return $handler;
}