2016-11-24 4 views
-1

Это разочаровывает. Этот код просто не будет запущен, и ошибок не будет!PHP Просто не будет отображаться ошибок

Как вы можете видеть ниже, у меня есть эхо в верхней части страницы, и это не отображается, однако, если я удалю ВСЕ другой код, кроме эха, он отобразится!

Я, хотя PHP был процедурный, поэтому эхо должно отображаться, даже если есть ошибка ниже.

Что происходит !?

<?php 
    echo "test"; 
    ini_set('display_errors', 1); 
    ini_set('display_startup_errors', 1); 
    error_reporting(E_ALL); 

    include 'models/Soccerseason.php'; 

    class FootballData { 
    public $config; 
    public $baseUri; 
    public $title; 
    public $auth = false; 

    public function __construct() { 
     $this->config = parse_ini_file('config.ini', true); 
     if($this->config['authToken'] == '4e0aa9dc285343fbb1db8251d64a38c4' || !isset($this->config['authToken'])) { 

     $this->baseUri = $this->config['baseUri']; 
     $this->reqPrefs['http']['method'] = 'GET'; 
     $this->reqPrefs['http']['header'] = 'X-Auth-Token: ' . $this->config['authToken']; 

     $this->auth = true; 
     } 
    } 

    public function getSoccerseasonById($id) { 
     echo "true"; 
     if ($this->auth == true) { 
     $result; 
     $resource = 'soccerseasons/' . $id; 
     $response = file_get_contents($this->baseUri . $resource, false, stream_context_create()); 

     if ($response == "" || $response == null) { 
      $response = file_get_contents($this->config['localBackup'] . $resource, false, stream_context_create()); 
      $result = json_decode($response); 
      $response['title'] = 'Local Copy:'; 
      $result = json_encode($response); 
     } 
     $result = json_decode($response); 

     return new Soccerseason($result); 

     } else { 
     return array('error' => 'API Key incorrect/not set, please amend in the config.'); 
     } 
    } 
    } 

    $fixtures = new FootballData->getSoccerseasonById(426); 
?> 
+0

Позор он получает -1 за счет грамматики и формулировки я использовал. Грамматическая полиция вокруг. Сообщение было ясным, только некоторые дополнительные проявления разочарования. Никакой вклад в помощь решению проблемы, просто переформулировка ... -_- –

ответ

1

показать эти ошибки, чтобы изменить ваш php.ini с этой линией:

display_errors = on 
+0

Я думал, что верхние 3 строки, которые я добавил, сделают это? Кажется, я не могу найти где-нибудь в cPanel, чтобы изменить эти настройки. –

+0

@MartynBall: PHP может быть настроен на запрет изменения настроек с помощью 'ini_set()'. И с 'display_errors = off' вы даже не увидите предупреждение о том, что' ini_set() 'отключено. –

+0

cPanel содержит раздел журнала ошибок, который позволяет просматривать ошибки, сгенерированные вашим сайтом –

1

echo не будет работать, если есть ошибка синтаксического анализа. И есть - на последней строке. Это должно быть: $fixtures = (new FootballData)->getSoccerseasonById(426);.

1

У вас есть достаточно разрешений для изменения php.ini? Если да, вы можете изменить display_errors, чтобы увидеть, появляются ли они. Попробуйте также проверить журналы сервера, php выводит ошибки внутри журналов ошибок, даже если они отключены на php.ini.

1

Войдите в свою cпанель. Значок для просмотра cPanel errorsGo to Metrics> Errors. enter image description here

enter image description here

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