如何使字符串比较之间的htmlentities和普通字符串在php(与非ascii字符)



当我使用这段代码时:

<?
$a = htmlentities(urldecode("ööö"));
$b = "ööö";
if ($a === $b){
    echo "equal.";
}
?>

当我运行上面的代码时,它不能写任何东西。但是当我使用下面的代码时:

<?
$a = "ööö";
$b = "ööö";
if ($a === $b){
    echo "equal.";
}
?>

它写"equal"。所以,我不能比较字符串,当他们与htmlentities函数使用。我该如何解决这个问题?我认为问题是关于htmlentities()函数。当使用它时,PHP无法真正比较字符串…谢谢。

Try with htmlspecialchars

<?php
    $a = htmlspecialchars(urldecode("ööö"));
    $b = "ööö";
    if ($a === $b){
            echo "equal.";
        } else {
            echo "not equal.";
    }
?>

最新更新