Здравствуйте, я разместил свой веб-сайт на бесплатном хостинге (5gbfree.com) и создал здесь функцию, которая извлекает курс песо к доллару на основе сайта http://ppa.com.ph??q=fcer_view, где он просто выбирает элемент a.active
и получает значение в виде открытого текста. Вчера он работал, но когда я снова проверил его сегодня утром, он не смог получить. Таким образом, он вернет значение по умолчанию, равное 50.
журнал ошибок:
[09-Apr-2017 13:49:32 Asia/Manila] PHP Warning: file_get_contents(http://www.ppa.com.ph/?q=fcer_view): failed to open stream: Connection timed out in /home/rasibaseport/public_html/simple_html_dom2.php on line 75
Я использую простой html DOM. Вот функция.
include "simple_html_dom2.php";
function PPA_peso_dollar_rate(){
// Create DOM from URL or file
error_reporting(E_ALL);
ini_set("display_errors", 0);
ini_set('default_socket_timeout', 15);
$html = file_get_html("http://www.ppa.com.ph/?q=fcer_view");
$ret = 0;
if($html === false){
$ret = 50;
}else {
foreach($html->find('a[class=active]') as $e)
$ret = $e->plaintext;
$explode = explode(" ", $ret);
$ret = 50;
foreach($explode as $ex){
if(is_numeric($ex)){
$ret = $ex;
}
}
if($ret == 0) $ret = 50;
}
echo $ret;
}
К сожалению, 5gbfree отключила функцию curl_init().
curl_init() has been disabled for security reasons in /home/rasibaseport/public_html/config.php on line 38
Здесь есть работа? Я ценю любую помощь. Большое тебе спасибо.
Редактировать: я забыл упомянуть, что при тестировании с помощью localhost(xampp) ожидаемое возвращаемое значение является правильным, без ошибок и предупреждений. Работает отлично.
ОБНОВЛЕНИЕ: после того, как вы попробовали обновленное решение @Rafiq, ничего не сработало. Это дало мне аналогичную ошибку.
[09-Apr-2017 20:18:53 Asia/Manila] PHP Warning: file_get_contents(http://www.ppa.com.ph/?q=fcer_view): failed to open stream: Connection timed out in /home/rasibaseport/public_html/simple_html_dom2.php on line 46