PHP Warning: feof(): 111 is not a valid stream resource in /var/www/pars_bitrix/index.php on line 32
PHP Warning: fgets(): 111 is not a valid stream resource in /var/www/pars_bitrix/index.php on line 34
Скрипт
<?php
require './http.php';
$http = new http;
/*clear function*/
function arrayEmptyClear($array)
{
if(!is_array($array)) return false;
foreach($array as $k => $v)
{
if(is_array($v))
{
$array[$k] = arrayEmptyClear($v);
if(count($array[$k]) == false) unset($array[$k]);
} else {
if($v === '' || $v === null || $v == false)
{
unset($array[$k]);
}
}
}
return implode(",",array_unique($array));
}
/*end*/
$fp = fopen("x26", "r"); // Открываем файл в режиме чтения
if ($fp)
{
while (!feof($fp))
{
$mytext = fgets($fp, 5000);
echo $mytext."\n";
if (!empty($mytext))
{
$chars = preg_split('/;/', $mytext,-1,PREG_SPLIT_OFFSET_CAPTURE);
$url = strtolower(trim($chars[0][0]));
echo $url . "\n";
$page= $http->get('http://www.' . $url);
if(preg_match('/bitrix/',$page))
{
echo "site by bitrix: " . $url . "\n Check contacts...\n";
$page = $http->get('http://www.' . $url . '/contacts/');
preg_match_all('/((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}/',$page,$tel);
preg_match_all('/([a-z0-9_\.\-]{1,20})@([a-z0-9\.\-]{1,20})\.([a-z]{2,4})/',$page,$mail);
if(preg_match('/(магазин|shop|Магазин|Shop)/',$page))
{
$shop = 'да';
}
else
{
$shop = 'нет';
}
$t = arrayEmptyClear($tel[0]);
$m = arrayEmptyClear($mail[0]);
echo $t . "\n";
echo $m . "\n";
$write = $url . ";" . $shop . ";" . $t . ";" . $m . "\r\n";
$fp = fopen('bitrix.csv', 'a+');
fwrite($fp, $write);
fclose($fp);
echo "\n===============end===============\n";
}
else
{
echo "site not by bitrix";
echo "\n===============end===============\n";
}
}
}
}
else echo "Ошибка при открытии файла";
fclose($fp);
?>
Спустя 45 минут, 9 секунд (10.04.2012 - 19:42) Игорь_Vasinsky написал(а):
Цитата |
$fp = fopen("x26", "r"); // Открываем файл в режиме чтения |
Спустя 27 минут, 18 секунд (10.04.2012 - 20:09) tp123 написал(а):
принял, сейчас попробуем
Спустя 20 минут (10.04.2012 - 20:29) tp123 написал(а):
Не сказал, что файл больше 200 мегабайт
Спустя 5 минут, 42 секунды (10.04.2012 - 20:35) Игорь_Vasinsky написал(а):
попробуй перед инициализацией $fp прописать
chmod("x26",0755);
Спустя 6 минут, 17 секунд (10.04.2012 - 20:41) Игорь_Vasinsky написал(а):
чёт у меня сомнения по операциям с файлами такого размера....
Спустя 12 минут, 19 секунд (10.04.2012 - 20:54) tp123 написал(а):
неа все равно выпадает в ошибку, если просто сделать вывод файла, тогда да он нормально считывает его. Может быть кэш переполняется или памяти нехватает?
Спустя 18 минут, 56 секунд (10.04.2012 - 21:13) Игорь_Vasinsky написал(а):
тыб получил такую ошибку.
права 0755?
права 0755?
Спустя 1 час, 39 минут, 11 секунд (10.04.2012 - 22:52) tp123 написал(а):
нет, именно в том то и дело, что часть скрипта работает а через несколько минут начинает выпадаь в ошибку это дело все! ДУмаю уже просто запихнуть его в mysql и уже оттуда парсить все это дело.
_____________