[英]htmlentities returning empty string
以下代碼輸出一個空字符串。 原因是 $text 中的“ó”,但為什么呢? 那么 utf-8 編碼的字符是什么?
使用iso-8859-1時問題解決了,但是我需要使用utf-8,那我做錯了什么?
<!doctype html>
<head>
<meta charset="utf-8">
</head>
<body>
<?
$text = 'Hola ó Hola';
$text = htmlentities($text,ENT_QUOTES,'utf-8');
echo $text;
?>
</body>
</html>
我有一個類似的問題,並使用標志ENT_SUBSTITUTE來防止空字符串。 它仍然沒有編碼,我不能依賴文件是UTF-8,所以我只在字符串上轉換編碼:
$text = htmlentities(mb_convert_encoding($text, 'UTF-8', 'ASCII'), ENT_SUBSTITUTE, "UTF-8");
如果源文件包含字符串,請確保將其保存為UTf-8。 否則,確保提供字符串的任何內容都將其提供為UTF-8。
New > Save As..
輸入文件名(空白一會兒),然后在類型中選擇PHP Hypertext ...
只是為可能與我有類似問題的其他人發表評論。 $var 包含特殊字符。 這個 …
<?= htmlentities($var) ?>
... 給了我一個空的 output,而 ...
<?php echo htmlentities($var); ?>
……工作得很好。 與 htmlspecialchars 相同。 以前從未遇到過這種情況,因為我通常不會那樣使用它,但在這里我只是在測試一些東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.