file_get_contents - "Use of undefined constant code - assumed 'code'"
file_get_contents - "Use of undefined constant code - assumed 'code'"
我正在尝试为我正在制作的网站添加一个基本的新抓取器,但我终究无法弄清楚是什么导致了这个错误。我抓取的文件是纯文本文件,完全可以访问。
我之前看到过它,OP 正在调用类似这样的内容:
$var = $data[str]
而不是 $var = $data['src']
但我没有调用名称中带有 "code" 的任何内容。
我在 运行 我的代码时收到此错误:
HTTP request failed. Error 8 on line 123: Use of undefined constant
code - assumed 'code' in file /usr/local/lib/php/head.php
下面是我的整个文件:
<?
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if (!$e_news === true) {
$error = error_get_last();
echo "HTTP request failed. Error " . $error['type'] . " on line " . $error['line'] . ": " . $error['message'] . " in file " . $error['file'] . "<br>";
} else {
echo "Everything went better than expected";
}
if ($e_news === true) {
$news = explode("|", $e_news);?>
<h4>News - <? echo (!empty($news) ? $news[1] : "v0.0.1");?> <small><? echo (!empty($news) ? $news[0] : "5/22/2016");?></small></h4>
<p><? echo (!empty($news) ? $news[2] : "Loading news failed, or there is currently no news.");?></p>
<?
} else {
echo "<h4>News failed to load</h4>";
}
?>
你们知道我在这里遗漏了什么或做错了什么吗?
正如@John Stirling 已经建议的那样,"the issue is elsewhere"。
更准确地说,报告的 Error 8 on line 123... etc
与之前在其他地方发生的错误有关。
您当前的代码导致此错误现在出现,因为您写道:
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if (!$e_news === true) {
$error = error_get_last();
这样,会发生以下情况:
- 每次
file_get_contents()
成功,$e_news
获取其内容。
- 则
$e_news === true
为FALSE(即使此内容为空,因为你使用了===
),而if (!$e_news === true)
始终为TRUE。
- 所以现在没有错误,你的
error_get_last()
得到了之前发生的最后一个错误的踪迹,别处...
事实上,为了让您的代码按预期工作,您应该这样做:
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if ($e_news === false) {
$error = error_get_last();
echo "HTTP request failed. Error " . $error['type'] . " on line " . $error['line'] . ": " . $error['message'] . " in file " . $error['file'] . "<br>";
echo "<h4>News failed to load</h4>";
} else {
echo "Everything went better than expected";
$news = explode("|", $e_news);?>
<h4>News - <? echo (!empty($news) ? $news[1] : "v0.0.1");?> <small><? echo (!empty($news) ? $news[0] : "5/22/2016");?></small></h4>
<p><? echo (!empty($news) ? $news[2] : "Loading news failed, or there is currently no news.");?></p>
<?
}
我正在尝试为我正在制作的网站添加一个基本的新抓取器,但我终究无法弄清楚是什么导致了这个错误。我抓取的文件是纯文本文件,完全可以访问。
我之前看到过它,OP 正在调用类似这样的内容:
$var = $data[str]
而不是 $var = $data['src']
但我没有调用名称中带有 "code" 的任何内容。 我在 运行 我的代码时收到此错误:
HTTP request failed. Error 8 on line 123: Use of undefined constant code - assumed 'code' in file /usr/local/lib/php/head.php
下面是我的整个文件:
<?
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if (!$e_news === true) {
$error = error_get_last();
echo "HTTP request failed. Error " . $error['type'] . " on line " . $error['line'] . ": " . $error['message'] . " in file " . $error['file'] . "<br>";
} else {
echo "Everything went better than expected";
}
if ($e_news === true) {
$news = explode("|", $e_news);?>
<h4>News - <? echo (!empty($news) ? $news[1] : "v0.0.1");?> <small><? echo (!empty($news) ? $news[0] : "5/22/2016");?></small></h4>
<p><? echo (!empty($news) ? $news[2] : "Loading news failed, or there is currently no news.");?></p>
<?
} else {
echo "<h4>News failed to load</h4>";
}
?>
你们知道我在这里遗漏了什么或做错了什么吗?
正如@John Stirling 已经建议的那样,"the issue is elsewhere"。
更准确地说,报告的 Error 8 on line 123... etc
与之前在其他地方发生的错误有关。
您当前的代码导致此错误现在出现,因为您写道:
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if (!$e_news === true) {
$error = error_get_last();
这样,会发生以下情况:
- 每次
file_get_contents()
成功,$e_news
获取其内容。 - 则
$e_news === true
为FALSE(即使此内容为空,因为你使用了===
),而if (!$e_news === true)
始终为TRUE。 - 所以现在没有错误,你的
error_get_last()
得到了之前发生的最后一个错误的踪迹,别处...
事实上,为了让您的代码按预期工作,您应该这样做:
$e_news = file_get_contents("http://cinemattson.com/templates/flickfeed/news.txt");
if ($e_news === false) {
$error = error_get_last();
echo "HTTP request failed. Error " . $error['type'] . " on line " . $error['line'] . ": " . $error['message'] . " in file " . $error['file'] . "<br>";
echo "<h4>News failed to load</h4>";
} else {
echo "Everything went better than expected";
$news = explode("|", $e_news);?>
<h4>News - <? echo (!empty($news) ? $news[1] : "v0.0.1");?> <small><? echo (!empty($news) ? $news[0] : "5/22/2016");?></small></h4>
<p><? echo (!empty($news) ? $news[2] : "Loading news failed, or there is currently no news.");?></p>
<?
}