Kişisel bir site.
Ağustos, 2011 için arşivler

OCZ Vertex 2 SSD arızası!
26 Ağu
21 Ekim’de alıp, 23 Ekim’de de bu blogda incelemesini yaptığım OCZ Vertex 2 60GB SSD diskim dün itibariyle hakkın rahmetine kavuşmuş bulunmakta.
Ürün 1 dakika kadar çalışıp arkasındaki kırmızı LED’i yakıyor. LED yanınca disk iptal oluyor, tepki vermiyor, ta ki power cycle yapılana kadar. 1 dakikalık çalışma süresi ve SSD’nin hızlı olması sayesinde kişisel dosyalarımın büyük bir kısmını kurtarabildim, 10 kere söküp takarak 🙂 Maalesef Outlook PST’mi kurtaramadım, çünkü onu okumaya çalıştığınız zaman dosyanın %43,6’sında SSD bize kırmızıları yakıyor. Sanırım SSD içindeki flash modülde bir nevi “bad sector” oluştu. Öte yandan SSD health yazılımları diski %100 gösteriyor, Örneğin SSDLife:
Excellent sözüne katılmak elde değil! Buradan anlaşılıyor ki SSD durumunu gösteren yazılımlar fıs. Bu disk bozuk ve sağlığı %100 gösteriyor. Öte yandan total/free olayı hatalı, disk boş değil. 10GB civarı boş yer var aslında.
—
Teknobiyotik’e konu ile ilgili arıza kaydı oluşturdum. Ne yazık ki araya 9 günlük bayram tatili girecek. Teknobiyotik’in yaklaşımı ve ürün değişim süreci ile ilgili her şeyi burada okuyucularım ile paylaşacağım.
İyi bayramlar. Benimki rezil oldu şu an tabi..
Türkçe tarih yapıcı
18 Ağu
Tarihleri 18 Ağustos 2011 tarzında yazdırabilmek için..
$format değişkeninin default değeri 18 Ağustos 2011, 22.45 şeklinde bir çıktı verecektir. strftime fonksiyonunun dokümantasyonunu okuyun, verebileceğiniz farklı değişkenleri görün.
$return da sonucu ekrana mı bassın, değer olarak dönsün mü hedesi.
$timestamp olarak sadece Unix timestamp değil, herhangi bir tarih stringi girebilirsiniz –strtotime’ın parse edebileceği gibi olması yeterli.
function TRTarih($timestamp, $format = "%d %B %Y, %H.%M", $return = false) { // v2; if (!is_numeric($timestamp)) $timestamp = strtotime($timestamp); if ($return) return iconv("ISO-8859-9", "UTF-8", strftime($format, $timestamp)); else echo iconv("ISO-8859-9", "UTF-8", strftime($format, $timestamp)); }
Klasör / dosya ağacı alıcı
18 Ağu
PHP’de bir klasörün içindeki dosya/klasörleri bir diziye almak için..
Klasör ve dosya istinaları tanımlanabilir. Recursive fonksiyondur.
function getDirectoryTree($klasor, $istisnaKlasor = array(".", ".."), $istisnaDosya = array('Thumbs.db')) { $dirs = array_diff(scandir($klasor), $istisnaKlasor); $dir_array = array(); foreach ($dirs as $d) { $filtereD = iconv('ISO-8859-9', 'UTF-8', $d); if (is_dir($klasor . '/' . $d)) { $dir_array[$filtereD] = getDirectoryTree($klasor . '/' . $d); } else { if (!in_array($filtereD, $istisnaDosya)) $dir_array[] = $filtereD; } } return $dir_array; }
Türkçe string normalize edici
18 Ağu
ğüşiöçı => gusioci’ye çeviren PHP kodu.
function normalize($str) { $str = iconv('UTF-8', 'US-ASCII//TRANSLIT', $str); return str_replace(array('"', "\\"), '', $str); }
Sunucunuzdaki localization ayarlarından dolayı Türkçe karakterlerde arıza görürseniz, ameleliği yapılmış kod da şuracıkta.. Kimse vermez bu hizmeti..
function romanize($str) { // Türkçeleri biz halledelim. $bunu = array('ğ', 'ü', 'ş', 'ö', 'ç', 'Ğ', 'Ü', 'Ş', 'İ', 'Ö', 'Ç'); $bununla = array('g', 'u', 's', 'o', 'c', 'G', 'U', 'S', 'I', 'O', 'C'); $str = str_replace($bunu, $bununla, $str); return iconv('UTF-8', 'US-ASCII//TRANSLIT', $str); }
PHP dosya yükleyici / kontrol edici
18 Ağu
Dosya upload işlemleri için dosya uzantısı kontrolü yapan ve dosya adındaki karakterlerde değiştirme / validasyon yapabilen fonksiyon yazdıydım, paylaşayım. Sessiz kaldık bir süredir.
function savePostFile($field, $path, $allowedExts = array('jpg', 'jpeg', 'gif', 'png'), $replace = array('/[^a-z0-9.]/i', '-') ) { if (in_array(end(explode(".", strtolower($field['name']))), $allowedExts)) { $file = explode('.', strtolower(preg_replace($replace[0], $replace[1], $field['name']))); $ext = '.' . array_pop($file); $name = implode('.', $file); $saveName = substr($name, 0, 100) . $ext; if (move_uploaded_file($field['tmp_name'], $path . $saveName)) { return $saveName; } } return false; }
$field parametresine $_FILES[‘fieldName’] tarzı bir giriş yapmalısınız. $path, kaydedilecek yol; $allowedExts izin verilen uzantılar dizisi; $replace ise ilk indisinde regexp, ikinci indisinde değiştirilecek karakteri barındıran bir dizi. Default değeri alfanumerik karakterleri tutup diğerlerini – ile değiştirmekte.
Kolay gelsin.
neler bitmiş