1 sene oldu sanırım son posttan bu yana. O biçim yardırıyorum.

Yaptığım işlerde lazım olduğunu farkettiğim bir işlevdi, geçtiğimiz gün psd to html conversion yaparken bir aratayım dedim, tahmin edileceği gibi gavur zaten yapmış; üstelik birkaç alternatifli olarak.

Öncelikle alternatifler;

  • http://placehold.it/ : Gri arkaplanlı, görselin de ortasında en boy değerleri yazacak şekilde imaj üretiyor. URL sonuna /enxboy ekleyerek görsele ulaşabiliyorsunuz. Şık işler.

Bunu görenler bunun kedili ve köpeklisini de yapmış;

  • http://placekitten.com/ – Kedilisi
  • http://placedog.com/ – Köpeklisi

Zoidberg’lisini de yoğun istek gelirse ben yaparım size.

Şimdi bunları kolay kullanabilmem için yazdığım kodcuğa geçiyorum.

static function placeholder($width, $height, $return = false, $type = 'meh') {
		// Placeholder imaj döner.
		$types = array(
			'meh' => 'http://placehold.it/%1$dx%2$d',
			'cats' => 'http://placekitten.com/%1$d/%2$d',
			'dogs' => 'http://www.placedog.com/%1$d/%2$d'
		);

		$url = (!$types[$type]) ? reset($types) : $types[$type];

		if ($return)
			return sprintf($url, $width, $height);

		printf('<img src="' . $url . '" width="%1$d" height="%2$d" alt="%1$d×%2$d Placeholder Görsel" class="placeholder" />', $width, $height);
	}

Kullanımı:

Benim ilgili sınıfımın içinde duruyor bu fonksiyon, bağımlılığı bulunmadığından statik olarak tanımlandı. Procedural takılıyorsanız baştaki static’i kaldırıp keyfinize bakın.

width ve height, rakam olarak vereceksiniz; zorunlu değer. Bu şekilde çağırıldığında XHTML valid IMG tagı olarak ekrana placeholder.it’ten görselinizi koyacaktır.

Müşterinizin ciddiyetine göre kedili ve köpekli versiyonları kullanabilmek adına; son parametremiz bunu belirliyor. $type’ın default değeri meh; placeholder.it’ten gelen sıkıcı gri görsel. cats derseniz kediler, dogs derseniz köpekler geliyor.

$return true olur ise IMG tag çıktısı yerine placeholder görselin hazırlanmış URL’ini verecektir.

Kolay gele.