PHP脚本编码特殊字符导致错误


php script encoding special characters causes error

我正在尝试运行这里引用的脚本

<?php
$url = 'index.php?option=com_content&view=article&catid=334:golfeq&id=2773:xcelsiors&Itemid=44';
parse_str(parse_url($url, PHP_URL_QUERY), $vars);
echo "Variables:'n";
print_r($vars);
$id = reset(explode(':', $vars['id']));
echo "The id is $id'n";
$id = intval($vars['id']);
echo "Again, the id is $id'n";

与所示的示例不同(在我的站点上可以工作),变量数组显示"&"被编码为"amp;",导致该脚本无法为我工作。

当我从示例中输出变量数组时,我得到像[amp;id]

这样的变量

该脚本如何修改与"&"解码,使其将在我的工作站工作?

谢谢你的帮助

简单的解决方法是

$url = html_entity_decode('index.php?option=com_content&view=article&catid=334:golfeq&id=2773:xcelsiors&Itemid=44');