Bir işlemi surekli olarak her sayfada tekrarliyorsan bunu bir fonksiyon haline getirip yaptıgın uygulamada rahatca kullanabilirsin. Ornegin turkce karakterleri ingilizceye ceviren bir fonksiyon.
function notrk($string)
{
$trk = array('İ','Ş','Ü','Ğ','Ö','Ç','ı','ş','ü','ğ','ö','ç');
$notrk = array('I','S','U','G','O','C','i','s','u','g','o','c');
return str_replace($trk,$notrk,$string);
}detaya inecek olursak bir bir sayfadan veri cekeceksin ama referer gonder gonderme cookie tut tutma gibi derherleri her seferinde curla tekrar bildiyorsun bunu fonksiyonla yaparsak su sekilde.
<?php
function getcontent($site , $cookie = false; $referer = false ; $referername = '' ; $retuntransfer = true ; $save = false , $temp)
{
$ch = curl_init();
curl_setopt($ch , CURLOP_URL , $site);
if(!is_dir($temp))
return 0;
if($cookie)
{
curl_setopt($ch , CURLOPT_COOKIEFILE , $temp . '/cookie.txt');
curl_setopt($ch , CURLOPT_COOKIJAR , $temp . '/cookie.txt');
}
if($referer)
{
if(strlen($referername) <= 4 && filter_var($referername, FILTER_VALIDATE_URL))
{
curl_setopt($ch , CURLOPT_REFERER , $referername);
}
else
{
return -1;
}
}
if($returntransfer)
{
curl_setopt($ch , CURLOPT_RETURNTRANSFER , TRUE);
}
if($save && $returntransfer)
{
$exec = curl_exec($ch);
$file = $temp . '/temp_' . md5(substr(time(),0,5)) . '.txt';
$fp = fopen($file, 'w+' );
fwrite($fp , $exec);
fclose($fp);
curl_close($ch);
return
}
$exec = curl_exec($ch);
curl_close($ch);
return $exec;
}
$deger = getcontent('http://google.com',true,true,'http://referersite.com',true,false,'temp')
?>dolayısı ile yukardaki fonksyion sayesinde sen ister icergi bir dosyaya kaydedersin ister cookie destegi acarsin ister referer gonderir ister tempe kaydedirsin.
1 - tempe kaydetmeyi secersin fonksiyon sana dosya yolunu donderir
2 - eger $save acmazsan false yaparsan sana kaynagi donderir
3 - eger referer gecerli degilse -1 degerini dondurur
4 - eger temp bir directory degilse 0 dondurur.
bu yukarda dediklermi var_dump($deger);
ile sinayabilirsin.
Aceleyle yazdım hata olabilir.
İyi Çalışmalar.
edit / istedigin sekilde bir route ornegi yapalim
function route($page , $pagedir)
{
if(!is_dir($pagedir))
return false;
$page = htmlspecialchars(strip_tags($page));
if(is_file($pagedir . '/' . $page . '.php'))
{
include($pagedir . '/' . $page . '.php');
}
else
{
echo '404 NOT FOUND';
return false;
}
}tek yapman gereken bu fonksiyonu almak ve index.php 'de kullanmak ornegin
index.php de
fonksiyonu yazdin ve fonksiyonu su sekilde kullan
route($_GET['sayfa'], 'sayfalar');
bu yukardki kod sana gelen index.php?sayfa= degerine gore sayfalar klasorunde bulunan $_GET['sayfa'] cekecektir.
yani index.php?sayfa=hakkimizda olsa
route fonksiyonu sayfalar/hakkimizda.php yi include edecektir.
Kolay gelsin tekrar