PHP file_get_contents 如果 returns 错误
PHP file_get_contents and if returns false
我有一个来自 "file_get_contents()" 函数的变量。将此变量与 if 函数一起使用总是给出 false。
$content = file_get_contents($url);
echo $content; // Echos 1
if ($content == "1") {
// It doesn't matter if I use 1, '1' or "1"
echo "True";
}
else {
echo "False"; // Always echos this one.
}
我认为在失败的情况下捕获错误可能会更好(http://php.net/manual/en/function.file-get-contents.php)
$content = file_get_contents($url);
if ($content === false) {
echo "False"; // or throw exception
}
echo "True";
您的比较失败,因为 $content
与您想象的不一样。
很可能有 <html>
个标签或空白字符(如 \n
)。
对您的内容进行 hexdump 以准确查看您从 file_get_contents
返回的内容。
Hex dump function implemented in PHP.
示例:
$content = file_get_contents($url);
hex_dump($content);
一旦你知道里面有什么 $content
你就可以相应地过滤它(评论中提到了 strip_tags
和 trim
。)
我有一个来自 "file_get_contents()" 函数的变量。将此变量与 if 函数一起使用总是给出 false。
$content = file_get_contents($url);
echo $content; // Echos 1
if ($content == "1") {
// It doesn't matter if I use 1, '1' or "1"
echo "True";
}
else {
echo "False"; // Always echos this one.
}
我认为在失败的情况下捕获错误可能会更好(http://php.net/manual/en/function.file-get-contents.php)
$content = file_get_contents($url);
if ($content === false) {
echo "False"; // or throw exception
}
echo "True";
您的比较失败,因为 $content
与您想象的不一样。
很可能有 <html>
个标签或空白字符(如 \n
)。
对您的内容进行 hexdump 以准确查看您从 file_get_contents
返回的内容。
Hex dump function implemented in PHP.
示例:
$content = file_get_contents($url);
hex_dump($content);
一旦你知道里面有什么 $content
你就可以相应地过滤它(评论中提到了 strip_tags
和 trim
。)