PHP - HTML 特殊字符在文本输入中不改变
PHP - HTML special characters don't change in text input
我使用 PFBC(PHP 表单生成器 class(PFBC))在页面中创建一个 TextBox 元素;
但是在带有特殊字符的字符串中他不会改变为普通字符:
例如:$razao = "livia's baby"
$form->addElement(new Element\Textbox("Razão Social:", "data[RAZAO_SOCIAL]", array(
"value" => htmlspecialchars_decode($razao, ENT_NOQUOTES) ,
"required" => true
)));
他打印:
click to see output
有什么想法吗?
ENT_NOQUOTES
告诉 htmlspecialchars_decode
不要解码单引号或双引号。使用 ENT_QUOTES
.
Will convert both double and single quotes.
对比
Will leave both double and single quotes unconverted.
-http://php.net/manual/en/function.htmlspecialchars-decode.php
htmlspecialchars_decode($razao, ENT_QUOTES)
不过要小心,根据 $razao
的值,您可能会向 XSS 注入开放自己。
我使用 PFBC(PHP 表单生成器 class(PFBC))在页面中创建一个 TextBox 元素;
但是在带有特殊字符的字符串中他不会改变为普通字符:
例如:$razao = "livia's baby"
$form->addElement(new Element\Textbox("Razão Social:", "data[RAZAO_SOCIAL]", array(
"value" => htmlspecialchars_decode($razao, ENT_NOQUOTES) ,
"required" => true
)));
他打印:
click to see output
有什么想法吗?
ENT_NOQUOTES
告诉 htmlspecialchars_decode
不要解码单引号或双引号。使用 ENT_QUOTES
.
Will convert both double and single quotes.
对比
Will leave both double and single quotes unconverted.
-http://php.net/manual/en/function.htmlspecialchars-decode.php
htmlspecialchars_decode($razao, ENT_QUOTES)
不过要小心,根据 $razao
的值,您可能会向 XSS 注入开放自己。