Htmlspecialchars için parametreleri kabul eden basit bir yöntem oluşturmaya çalışıyorum. PHP bildirimi alıyorum rağmen:Uyarı: Tanımsız sabitin kullanımı ENT_HTML5 - varsayılan 'ENT_HTML5'
Use of undefined constant ENT_HTML5 - assumed 'ENT_HTML5'
- bu sebep ne olabilir herhangi bir fikir?/**
* 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['flags'], $params['charset']); } return $mixed; }
- Şunu değiştirirsem
:
ENT_QUOTES | ENT_HTML5
içine:ENT_QUOTES
, farklı bir hatayı olsun
Warning: htmlspecialchars() expects parameter 2 to be long, string given
GÜNCELLEME
PHP 5.3 kullanıyorum, bu yüzden HTML5 hatasının nedeni budur.
Notice: Use of undefined constant ENT_HTML401 - assumed 'ENT_HTML401'
Hangi PHP sürümünü kullanıyorsunuz? ENT_HTML5, php 5.4 ve üstü için ... –