我有一个像这样的xml文件:
<volume name="Early">
<book name="School Years">
<chapter number="1">
<line number="1">Here's the first line with Chicago in it.</line>
<line number="2">Here's a line that talks about Atlanta</line>
<line number="3">Here's a line that says chicagogo </line>
</chapter>
</book>
</volume>
我正在尝试使用PHP进行简单的关键字搜索,找到该词并显示它所在的行。我已经成功实现了这个功能。
$xml = simplexml_load_file($data);
$keyword = $_GET['keyword'];
$kw=$xml->xpath("//line[contains(text(),'$keyword')]");
...snip...
echo $kw[0]." is the first returned item";
然而,使用这种技术,用户必须搜索'Chicago'而不是'chicago',否则搜索将返回空结果。
我知道我需要使用翻译函数,但是所有的尝试都徒劳无功。
我已经尝试过:
$upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$lower = "abcdefghijklmnopqrstuvwxyz";
$kw = $xml->xpath("line[contains(text(),'translate('$keyword','$upper','$lower'))]");
但是似乎什么都不起作用。有什么建议吗?
translate
前面似乎多了一个单引号。 - Charles