所以我尝试了很多不同的事情并一直在寻找解决方案,但没有任何运气......
我的 SPARQL 查询是
PREFIX dbp: <http://dbpedia.org/resource/>
PREFIX dbpedia2: <http://dbpedia.org/property/>
SELECT ?currentclub
WHERE {
dbp:".$term." dbpedia2:currentclub ?currentclub .
FILTER langMatches(lang(?currentclub), 'en')
}
当 $term 等于名称中带有重音符号的东西时,它会全部搞砸并且没有给出结果。我尝试了很多不同的东西,但似乎无法让它们中的任何一个起作用。希望得到一些帮助。
谢谢
编辑
我正在使用 PHP 和 curl。这是我根据需要下载和修改的东西……这是它与 dbpedia 通信的部分。
$searchUrl = 'http://dbpedia.org/sparql?'
.'query='.urlencode($query)
.'&format='.$format;
$query 贴在上面,使用的格式是 json。
编辑 2
这是我正在使用的源代码。https://gist.github.com/380379也许查看完整代码会让您更好地了解问题所在。
我将包含带重音的姓氏的数据库字段更改为“utf8_unicode_ci”,但我仍然卡住了,找不到任何可行的解决方案。