代码:
function updateGUI()
{
foreach ($GLOBALS['content_array'] as $i)
{
$title = $i[0];
$rating = $i[1];
echo "<li class=contentList><a class=contentListLink href=filmer_php.php?title=".$title."><span class=spantitle>".$title."</span><span class=spanrating>".asteriskifyRating($rating)."</span></a></li>";
}
}
输出:
资源:
http://dist3.webbintro.se/assignments/3/movies.txt
上下文:所以我创建的<li>
附加了<a>
,我从全局变量中获取$title
的{{1}}(不重要) 。
问题是查询字符串不包含完整字符串,因为某些<li>
包含空格,因此它们会在空格处被截断。我尝试使用转义字符$title
但是没有用,我找不到任何关于如何正确解析的好文章。
此外,如果解决方案不包含正则表达式,我更愿意,但如果这只能用正则表达式解决,那么就这样吧。
EDIT1: 上下文:好的,urlencode修复了最大的问题。在“星球大战”之前,我还在找一个mojibake广场,有什么建议导致这个问题吗?
完整代码: http://jsfiddle.net/Uv5bV/
EDIT2: 删除了utf-8 BOM,从这个帖子中获得了解决方案:How to remove multiple UTF-8 BOM sequences before "<!DOCTYPE>"?
代码:
\"
答案 0 :(得分:5)
添加url encoding:
echo '<li class="contentList"><a class="contentListLink" href="filmer_php.php?title='.urlencode($title).'"><span class="spantitle">'.$title.'</span><span class="spanrating">'.asteriskifyRating($rating).'</span></a></li>';
你还应该多关注引号(单引号和双引号)。