Hoşgeldin Misafir

PHP Nasıl Daha Hızlı Çalışır?

LikeForYou

26 Eyl 2017
728 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
1. Hataları herzaman gizleyin. 

Herkes hata yapabilir. ancak hatalarınızı hernet görmesi can sıkıcı olur.
ilk önce Php sayfasının başında error_reporting(0); yazarsanız kolay hatalar gizlenir.
Fakat dosya açma gibi önemli prosedürler yine hata verir. bunu önlemek için de komutun başına @ koymanız yeterli olacaktır.
örnek: $h=@fopen("dosya","w");
ya da bir Mysql komutu yazarken benzeri kullanmak mümkün.
@include("sahte_php_$no.php");



2- Php Kısaltmaları kullanın.

$sayi=$sayi+1 yazmak yerine $sayi ++; aynı anlama gelir.

if($a==5){ $b=2; }else{ $b=7 } yazmak yerine $b=($a==5)?2:7; aynı anlama gelir.

3. include ile hız kazanın.

Php derleme aşamasında mevcut parametrelere göre derleme yapar. bu durumda çok çok uzun bir if parantezi varsa hepsini bir dosyaya koyup hızlanma sağlayabilirsiniz.
örnek:
if($uye_login==1)
{
// burda 40-50 satırlık bir prosedür var diyelim 
// işin kötüsü aynı sayfaya ziyaretçiler de giriyor. 
// ve burdaki 50 satır çoğu zaman işe yaramıyor.
}
oradaki 50 satırı alıyoruz ve farklı bir dosyaya koyuyoruz. dosya adını da user_islemleri.php yaptık diyelim. bu durumda yukarıyadaki if komutu şu hale geliyor.
if($user_login==1)
{
include("user_islemleri.php");
}


4- Strlen Yerine Isset 
Çeşitli durumlarda saydırma ve döngü komutlarından kaçınmak size hız kazandırır. Örneğin Strlen aslında bir kelimedeki bütün harfleri sayan bir döngüdür. Kelimenin de harflerden oluşan bir dizi olduğunu bildiğimize göre ayrı ayrı harfleri saymak yerine son karakterin varlığına bakmak yeterli olacaktır.
if(strlen($nick) > 10)
{
echo "Çok uzun bir nick yazdınız";
}
onun yerine şu şekilde yazılabilir.

if(isset($nickilk önce)) echo " çok uzun nick yazdınız";


5- Yerine Göre Tek Tırnak ya da Çift tırnak kullanın.
Php ile çift tırnak kullandığınızda verilen kelimenin içinde parametreler olma olasılıki bulunur. bu durumda php daha çok prosedür yapmış olur.
aşağıdaki iki örneğe bakalım:
print "prosedür sonucu: $sayi dir"; 
burda çift tırnak olması zorunlu ancak onun yerine şu kullanılırsa daha süratli olur. 

print 'prosedür sonucu:' . $sayi . 'dir';

6- Class kullanmayı öğrenin:

Class: Birkaç fonksiyonun beraber kullanım biçimidir. Fonksiyon gibi yeniden kullanmak mümkün ancak daha kapsamlı olduğu için fazla iş yapar.
Class kavramı php 5 ile gelmiş bir olaydır. eski derslerde class olmamasının nedenlerinden biri budur. Diğer çoğu uygulama dilinde "olmazsa olmaz" denilen önemli şeylerden biridir. Class mantığını öğrenerek projenizde hız sağlayamazsınız ancak çalışma hızınız artacaktır. 


Burada bahsedilen hız kavramı ufak bir sitede önemli değildir. sitenize günde 100 kişi giriyorsa bunları yapmanızın pek bir farkı olmaz. ancak günde 10.000 kişi geliyorsa aradaki fark hissedilebilir. gerçi o kadar insan gelirse muhtemelen dedicated sunucu almak zorunda kalacağınız için yine hız konusu ile ilgili bir derdiniz olmayacaktır.