使用HTML实体对数组进行排序

时间:2014-07-15 08:52:55

标签: php html arrays

我正在尝试使用PHP对特殊字符进行数组排序。

我从数据库中检索字符串,它们正在Web浏览器上正确显示。但是当我检查页面的来源时,我会看到他们的html实体。

显示为İnan

来源是İnan

因此,当我进行数组排序时,它没有正确排序,我猜是因为html实体。

在将它们放入数组之前我尝试解码但没有运气。

我也试过这个:

setlocale(LC_ALL,'TURKISH');
asort($stu_list,SORT_LOCALE_STRING);

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

使用html_entity_decode查找HTML实体的实际字符并使用自定义排序。

function CustomSort($a, $b)
{
    $da = html_entity_decode($a);
    $db = html_entity_decode($b);

    if ($da == $db) return 0;

    return $da > $db ? 1 : -1;
}

uasort($stu_list, "CustomSort");