我试图在HTML文档中找到HTML元素 的位置。 所以我这样做:
$filestring = file_get_contents($filename); //get the raw file
$filestring = htmlspecialchars($filestring);
$pos = strpos($filestring, "<head>"); //find the position of <head>
print_r($pos); //print the position
结束print_r什么也不显示。我认为这是由于特殊字符,但不明白该怎么做。
答案 0 :(得分:3)
$ filestring中没有<head>
这样的东西。
当您使用htmlspecialchars时,<
和>
会被替换:
http://php.net/manual/en/function.htmlspecialchars.php
$pos = strpos($filestring, "<head>");
或者在搜索字符串时不要使用htmlspecialchars
答案 1 :(得分:2)
为什么使用htmlspecialchars
?
您是否了解使用此功能会导致>
或<
等所有实体替换为>
或<
等表示?
所以,解决方案是
htmlspecialchars
<head>
,而是搜索<head>
答案 2 :(得分:0)
我认为您应该从代码中删除此行。
$filestring = htmlspecialchars($filestring);