с помощью этого кода получаю pars_title.txt
set_time_limit(0);
$url = "http://history-autocars.ru/sitemap.xml";
function FetchUrl($url, $postvars, $timeout, $ref, $blank){
sleep($timeout);
echo @date("r")." fetching $url \r\n";
$ch = curl_init();
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_TIMEOUT,30);
curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, trim($url));
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
$result = curl_exec($ch);
if($blank == "1"){
$result = preg_replace("/\n/", "", $result);
$result = preg_replace("/\r/", "", $result);
}
curl_close($ch);
return $result;
}
$page = FetchUrl($url, NULL, NULL, NULL, NULL);
preg_match_all("!<loc>(.*?)<\/loc>!si", $page, $out);
$fp=fopen("pars_title.txt","w"); //сохраняется файл с title и url
foreach($out[1] as $link){
$page = FetchUrl($link, NULL, NULL, NULL, NULL);
file_put_contents("log.txt",$page);
preg_match("!<title>(.*?)<\/title>!si", $page, $tit);
echo '".$link."|".$tit[1]."'; flush();
fwrite($fp,'<title>'.$tit[1].'</title>'.'<loc>'.$link.'<loc>'."\r\n");
}
fclose($fp);
как подключить этот код, чтобы транслит был на автомате и файлы в которые парсился контент називались title.php title2.php
#Транслит
function Translate( $str = '', $charset = 'UTF-8' ) {
$str = strtr(mb_strtolower( $str, $charset ), array(
'а' => 'a', 'б' => 'b', 'в' => 'v',
'г' => 'g', 'д' => 'd', 'е' => 'e',
'ё' => 'e', 'ж' => 'zh', 'з' => 'z',
'и' => 'i', 'й' => 'y', 'к' => 'k',
'л' => 'l', 'м' => 'm', 'н' => 'n',
'о' => 'o', 'п' => 'p', 'р' => 'r',
'с' => 's', 'т' => 't', 'у' => 'u',
'ф' => 'f', 'х' => 'h', 'ц' => 'c',
'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch',
'ь' => '\'', 'ы' => 'y', 'ъ' => '\'',
'э' => 'e', 'ю' => 'yu', 'я' => 'ya'
));
return preg_replace('~[^-a-z0-9_]+~u', ' ', $str);
}
$content = ''; // В этой переменной, должно быть то, что получишь из урла, т.е. контент
$content = file_get_contents( 'index.html' );
preg_match( '~<title.*>(.*)</title>~iUsu', $content, $match_title );
if ( isset( $match_title[1] ) && trim( $match_title[1] ) != '' )
{
$match_title = $match_title[1];
// Забираем первые 35 символов
$substr = mb_substr( $match_title, 0, 35, 'utf-8' );
// Транслитим
$substr_translate = Translate( $substr );
$content = str_replace( $substr, $substr_translate, $content );
print_r($content);
}
else
{
echo "No Find Title";
}