Scalability in PHP
Posted 4 months ago at 11:47. 0 comments
PHP nin sevdiğim tarafı iyi scale edilebiliyor olması. Bu konuda güzel bi prezentasyon buldum.
PHP nin sevdiğim tarafı iyi scale edilebiliyor olması. Bu konuda güzel bi prezentasyon buldum.
dertli bir iş. en büyük sıkıntı da shared hostinglerde document root değiştirilemediği için oluyor. zend framework için önerilen dizin yapısında public klasörü rootda yer almıyor. bu bir çok açıdan tercih edilmesi gereken bir durum. ancak shared hostinglerdeki document root olan httpdocs ya da public_html klasörünün bir üzerinde değişiklik yapılamadığı için aşağıdaki kodu root dizindeki .htaccess dosyasının içine kopyalayın. public dizinindeki .htaccess dosyasını da kaldırın. mis gibi.
RewriteEngine On
RewriteRule ^\.htaccess$ - [F]
RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]
RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]
RewriteRule ^public/.*$ /public/index.php [NC,L]
kaynak: şurası.
Oldukça uzun süredir Zend debugger kullanıyordum. Halimden de memnundum açıkçası, çünkü debugging olayından beklentim remote debugging den ibaretti ve Zend debugger da sorunsuz çalışıyordu. İşletim sistemi deÄŸiÅŸtirip mac’e geçmemle birlikte Xdebug’ı denemeye karar verdim, ve ÅŸimdi bi sürü “fancy” özelliÄŸiyle birlikte Xdebug’ın Zend debugger’dan çok daha iyi olduÄŸunu anlamış bulunuyorum.
Mac’e geçmemle beraber uzun süredir kullandığım Zend Studio 5.5 ve Aptana’dan da Zend Studio 7′ye geçmeye karar verdim. Zend Studio 7 eclipse üzerine kurulmuÅŸ harika bir ide. Gerçi ben hala alışabilmiÅŸ deÄŸilim ama artık bir deÄŸiÅŸikik yapmam ÅŸarttı.
Neyse, Zend Studio 7 malesef debugger olarak sadece Zend Debugger’a izin veriyor. Xdebug disable edilmiÅŸ durumda. Ancak ufak bir trick ile bunu deÄŸiÅŸtirmek mümkün. Şöyleki;
1. Zend Studio folder’a gidilir. cd /Applications/Zend/Zend\ Studio\ -\ 7.0.0
2. cd pluginsmkdir disabled
3. mkdir disabled
4. mv com.zend.php.debug* disabled
5. Bir de configurasyon dosyasında ufak bir değişiklik yapmamız gerek. open -a TextWrangler com.zend.php_<ZSE_version_number>/plugin_customization.ini
6. ‘org.eclipse.ui.workbench/UIActivities.com.zend.php.debug.ui.XDebugActivity’ alanının değerini ‘true’ olarak değiştir.
7. Zend Studio’yu yeniden baÅŸlat.
8. Preferences içinde PHP -> Debug sayfasında gerekli değişiklikler yapılır (debugger olarak Xdebug seç, PHP executable path i göster vb.)
Afiyet olsun.
çok basit olsa da ben yine de buraya yazıyorum. yapmaya çalışılan kaç yaşında olduÄŸunu hesaplamak. tek yaptığım da iki timestamp’ı (biri ÅŸu anki tarih, diÄŸeri doÄŸum günü) birbirinden çıkartmak. küsüratlı bir rakam elde edilmek istenmiyorsa floor fonksiyonuyla yuvarlana da bilir. bir de 365 e bölmek istenmeyebilir. o ayrı.
$now = new Zend_Date();
$dob = new Zend_Date("954686860", Zend_Date::TIMESTAMP );
echo floor(($now->getTimestamp() - $dob->getTimestamp()) / (24 * 60 * 60)) / 365;