2016-05-25 6 views
0

Я пытаюсь добавить базовый новый граббер для сайта, который я создаю, и не могу понять, насколько я могу объяснить, что вызывает эту ошибку. Файл, который я захватил, представляет собой текстовый файл, полностью доступный.file_get_contents - «Использование неопределенного постоянного кода - предполагаемый« код »

Я видел это писал раньше, и OP зовет что-то вроде: $var = $data[str] вместо $var = $data['src']

Но я ничего с «кодом» в названии не звонит. Я получаю эту ошибку при запуске моего кода:

Ошибка HTTP-запроса. Ошибка 8 по строке 123: Использование неопределенная константа кода - предполагается, 'код' в файле /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 &nbsp;&nbsp;&nbsp;&nbsp; - <? echo (!empty($news) ? $news[1] : "v0.0.1");?>&nbsp;&nbsp;<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>"; 
    } 
?> 

Вы, ребята, знаете, что мне не хватает или что-то не так?

+1

Проблема в другом месте. –

+0

Существует также строка и файл. Вы уверены, что это то, что вы нам показываете? –

+1

Сделайте 'print_r (error_get_last());', чтобы узнать, какой файл и номер строки вызывает его. – Mike

ответ

2

Как уже было предложено @John Stirling, «проблема в другом месте».

Более точно сообщенный 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) всегда ИСТИНА.
  • Так что нет никакой ошибки Теперь, и ваш 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 &nbsp;&nbsp;&nbsp;&nbsp; - <? echo (!empty($news) ? $news[1] : "v0.0.1");?>&nbsp;&nbsp;<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> 
<? 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^