Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t在浏览器中显示从php中的htmlentities()函数返回的输出结果_Php_Function_Reference - Fatal编程技术网

Can';t在浏览器中显示从php中的htmlentities()函数返回的输出结果

Can';t在浏览器中显示从php中的htmlentities()函数返回的输出结果,php,function,reference,Php,Function,Reference,我试图显示从htmlentities()函数返回的输出。但是,它在浏览器中不显示任何内容。这是我的密码 $advertisement = "Coffee at 'Cafè Française' costs $2.25."; echo htmlentities($advertisement); 结果应该是这样的: 法兰西咖啡馆的咖啡价格为2.25美元。 但是,浏览器中没有显示任何内容 当我在变量中分配输出时,它的值不是NULL。测试代码为: $temp = htmlentities($adver

我试图显示从htmlentities()函数返回的输出。但是,它在浏览器中不显示任何内容。这是我的密码

$advertisement = "Coffee at 'Cafè Française' costs $2.25.";
echo htmlentities($advertisement);
结果应该是这样的:

法兰西咖啡馆的咖啡价格为2.25美元。

但是,浏览器中没有显示任何内容

当我在变量中分配输出时,它的值不是NULL。测试代码为:

$temp = htmlentities($advertisement);
if($temp === NULL)
    echo "Null";
else
    echo "Not null";
然后,结果为“NOTNULL”

我还尝试将此代码作为测试:

$str = "A 'quote' is `<b>`bold`</b>`";

//Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);
$str=“引号”是“粗体”;
//输出:一个“报价”为b旧/b
回音频率($str);
但是,浏览器中的输出不是我所期望的。我的意思是在浏览器中,它不会被
替换为
b


我错过了什么?我需要更改php.ini文件中的任何设置吗?

这就是htmlentities应该做的。只要回显字符串,它就会自动实现HTML

$str = "A quote is <b>bold</b>";
echo $str;
$str=“引号是粗体的”;
echo$str;

这与默认的UTF-8编码和法语有关。您必须将编码更改为ISO-8859-15,代码avec Française才能工作:

$advertisement = "Coffee at 'Cafè Française' costs $2.25.";
echo htmlentities($advertisement, ENT_QUOTES, "ISO-8859-15");
在浏览器中查看时,它将保持不变。这就是htmlentities的本意。如果右键单击浏览器并查看源,您将看到预期的转换:

Coffee at &#039;Caf&egrave; Fran&ccedil;aise&#039; costs $2.25.

不使用htmlentities,它用于更改html特殊字符是可打印的,例如