php – 注意:使用未定义的常数ENT_HTML5 – 假设“ENT_HTML5”

前端之家收集整理的这篇文章主要介绍了php – 注意:使用未定义的常数ENT_HTML5 – 假设“ENT_HTML5”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试创建一个接受htmlspecialchars参数的简单方法.虽然我正在获得 PHP通知

Use of undefined constant ENT_HTML5 – assumed ‘ENT_HTML5’

任何可能导致这种情况的想法?

/ **

* Encode string.
 *
 * @param array/string $value
 * @param string $param
 * @return string
 */
protected function escape($mixed,$params) {

    $defaults = array('flags' => ENT_QUOTES | ENT_HTML5,'charset' => 'UTF-8');
    $params = array_merge($defaults,$params);

    if (is_array($mixed)) {
        foreach($mixed as $key => $value) {
            $mixed[$key] = $this->escape($value,$params['flags'],$params['charset']);
        }
    } elseif (is_string($mixed)) {
        $mixed = htmlspecialchars($mixed,$params['charset']);
    }

    return $mixed;
}

>如果我更改:ENT_QUOTES | ENT_HTML5进入:ENT_QUOTES,我收到一个不同的错误

Warning: htmlspecialchars() expects parameter 2 to be long,string
given

UPDATE

我使用PHP 5.3,这是HTML5错误的原因.如果我更改ENT_QUOTES | ENT_HTML5到ENT_COMPAT | ENT_HTML401我得到同样的错误

Notice: Use of undefined constant ENT_HTML401 – assumed ‘ENT_HTML401’

ENT_HTML5,ENT_HTML401和其他一些在PHP版本5.4 according to the manual添加.对于早期版本,这些常量是未定义的,PHP自动假定未定义的常量是编程“slips”并将其转换为字符串.
原文链接:https://www.f2er.com/php/139821.html

猜你在找的PHP相关文章