Uzun zamandır PHP kodu yazmamıştım. Bir süredir Python ile uğraşıyorum. Python’a alışan parmaklarım PHP’ye döndüğümde “$” işaretinin klavyedeki yerini bulmakta zorlandılar.
Gelelim PHP’ye neden ihtiyaç duyduğuma. “http://mustafau.com” adresine gelen bir kullanıcıyı tarayıcısının dil ayarlarına göre “http://gunluk.mustafau.com” (Türkçe) veya “http://blog.mustafau.com“a (İngilizce) yönlendirmek istiyorum. mustafau.com‘a yeni bir sunucu alanı almak istemediğim için ilk yönlendirmeyi “http://students.sabanciuniv.edu/~mustafau/r/redirect.php” adresine yapıyorum. Burada tarayıcının dil ayarlarına bakılıyor. Varsayılan ayarlarda “tr” (Türkçe) veya “az” (Azerice) var ise ziyaretçi gunluk.mustafau.com‘a yoksa blog.mustafau.com‘a yönlendiriliyor.
Şimdi de sıra betiği paylaşmaya geldi. Kodları aşağıya yazıyorum. Sıkıştırılmış dosya olarak indirmek isterseniz buyrun burada.
<?php /** * @version 1.0, redirect.php, 2007-02-28, 22:50 * @copyright (C)2007 Mustafa Ulu, All rights reserved. / Her hakkı saklıdır. * @license GNU/GPL * This is free software. / Bu özgür bir yazılımdır. */ // Tarayıcının varsayılan dillerini inceler, belirli dillere rastlar ise uygun // yönlendirmeyi gerçekleştirir. // EasyPHP 1.8 sürümü ile gelen 'index.php' dosyasından esinlenildi. // tarayıcının varsayılan dillerini bir array içine al $browser_languages = explode(",", getenv("HTTP_ACCEPT_LANGUAGE")); $browser_languages_size = sizeof($browser_languages); // İngilizce ve Türkçe dilleri için yönlendirme adresleri $redirect_en = 'Location: http://blog.mustafau.com/'; $redirect_tr = 'Location: http://gunluk.mustafau.com/'; // varsayılan yönlendirme adresimiz İngilizce günlük $redirect_str = $redirect_en; for ($i = 0; $i < $browser_languages_size; $i++) { $lg = explode("-", $browser_languages[$i]); if($lg[0] == 'tr' || $lg[0] == 'az') { // 'tr' veya 'az' kodlarına rastlarsan Türkçe günlüğe yönlendir $redirect_str = $redirect_tr; break; } } header($redirect_str); ?>