Помогите написать скрипт на РНР

tk1308
На сайте с 27.11.2010
Offline
37
510

Хочу доработать один скриптик, если получится выложу в местный паблик :)

В РНР умею только читать, не писать)

Нужно из файла start.txt по нажатию кнопки старт в файле go.php переместить в файл end.txt домен, тИЦ которого больше 0.

Скрипт, считающий тИЦ

<?php


function get_yandex($url){

$ret = 'N/A';
include('download.php');

if( substr($url,0,7) != 'http://' )
$url = 'http://' . $url;

if( $content = get_download('http://bar-navig.yandex.ru/u?ver=2&url='. urlencode($url) .'&show=1&post=0') ){

if( class_exists('SimpleXMLElement') ){
if( $xmldoc = new SimpleXMLElement($content) ){
$tcy = $xmldoc->tcy;
if( !empty($tcy) ){
$ret = $tcy['value'];
}
}
}
else{
preg_match("/value=\"(.\d*)\"/",$content,$tic);
if( !empty($tic[1]) ) $ret = $tic[1];
}
}

return $ret;


/*
foreach( $xmldoc->xpath('/urlinfo/topics/topic') as $topic ){
echo '<li><a href="'. $topic['url'] .'">'. $topic['title'] .'</a></li>';
}
*/
}

?>

Его инклюд

<?php


function get_download($url){

$ret = false;

if( function_exists('curl_init') ){
if( $curl = curl_init() ){

if( !curl_setopt($curl,CURLOPT_URL,$url) ) return $ret;
if( !curl_setopt($curl,CURLOPT_RETURNTRANSFER,true) ) return $ret;
if( !curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,30) ) return $ret;
if( !curl_setopt($curl,CURLOPT_HEADER,false) ) return $ret;
if( !curl_setopt($curl,CURLOPT_ENCODING,"gzip,deflate") ) return $ret;

$ret = curl_exec($curl);

curl_close($curl);
}
}
else{
$u = parse_url($url);

if( $fp = @fsockopen($u['host'],!empty($u['port']) ? $u['port'] : 80 ) ){

$headers = 'GET '. $u['path'] . '?' . $u['query'] .' HTTP/1.0'. "\r\n";
$headers .= 'Host: '. $u['host'] ."\r\n";
$headers .= 'Connection: Close' . "\r\n\r\n";

fwrite($fp, $headers);
$ret = '';

while( !feof($fp) ){
$ret .= fgets($fp,1024);
}

$ret = substr($ret,strpos($ret,"\r\n\r\n") + 4);

fclose($fp);
}
}

return $ret;
}


?>
siv1987
На сайте с 02.04.2009
Offline
427
#1


$sites = file( 'start.txt' );

if( sizeof($sites) )
{
foreach( $sites as $site )
{
$tic = get_yandex( trim( $site ) );
if( $tic > 0 )
{
$to_put .= "{$site}::{$tic}".PHP_EOL;
}
}
}

file_put_contents( 'end.txt', $to_put );

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий