PHP Nedir ?

Web dünyasında en çok kullanılan dillerden biri olan PHP (Hypertext Preprocessor), web uygulamaları geliştirmek amacıyla tasarlanmış HTML etiketlerin içerisine gömülebilen, sunucu taraflı çalışan bir betik dilidir. Aynı zamanda, diğer web tabanlı programlama dillerine göre daha kolay öğrenilebilecek bir dildir.

Örnek: HTML içerisinde kullanılan PHP kodu

Bir web sayfası/uygulaması/projesi yapabilmek için gereken adımları aşağıdaki gibi listeleyebiliriz.

  • Projenin arayüz tasarımı çizilir.
  • Arayüzler, HTML ve CSS kullanılarak tarayıcılarda görüntülenebilir hale getirilir. (Buraya JavaScript kodlarını da dahil edebiliriz.)
  • Son olarak, PHP veya diğer programlama dilleri kullanılarak HTML sayfalar dinamik hale getirilir.

Web projelerinde, programlama dilinin önemini şöyle açıklayabiliriz;
Herhangi bir fonksiyonu olmayan, sadece birkaç sayfadan oluşan web siteleri, programlama dili kullanılmadan da çalışır hale getirilebilir. Bu içeriklerin güncellenmesi için sürekli HTML kodların arasında boğuşmamız gerekir. Ancak bir programlama dili sayesinde bu içeriklerin kolay güncellenebilmesi için yönetim paneli yapılabilir. Bu nokta da PHP ile istenilen rahatlığı sağlayabiliriz.

PHP Nasıl Çalışır ?

PHP kodları web sunucuları tarafından yorumlanır ve kullanıcılara PHP kodlarının sonucunu gönderilir. Yani yukarıdaki örneği düşünürsek, kullanıcılar tarayıcı üzerinde sadece “Merhaba Dünya!” yazısını görecektir. Bu işlemleri aşağıdaki gibi sıralayabiliriz;

  • Sunucu, istek yapılan PHP dosyalarını yorumlayıcıya gönderir.
  • Yorumlayıcı (Apache), PHP kodlarını çalıştırarak sonucunu sunucuya geri gönderir.
  • Sunucuya gelen sonuç, HTML halinde istemciye gönderilir.

PHP dosyalarını çalıştırabilmek için bir sunucuya ihtiyacımız vardır. Ancak kendi bilgisayarımızı da sunucu gibi (localhost) kullanabiliriz. Bunun için Xampp, Wamp, EasyPHP, AppServ gibi programlar bulunuyor. Bunlardan herhangi birini bilgisayarımıza kurarak PHP kodlarını çalıştırabiliriz. Ben localhost olarak Xampp kullanmaktayım. Bu programların içinde ihtiyacımız olan Apache bulunmaktadır. Ayrıca MySQL de kurulu gelmektedir. Bu sayede PHP ile veri tabanı işlemlerimizi kolaylıkla çözebiliriz.

PHP dosyalarının, “.php, .phtml, .php3, .php4, .php5, .php7, .phps” gibi sürümlere göre farklı uzantıları bulunmaktadır. Genellikle “.php” uzantısı karşımıza çıkar. Ayrıca PHP kodları, <?php  ve  ?> etiketleri arasında yazılır.

PHP için IDE ve Editörler

Kodların okunulabilirliği, kod yazarken yardımcı kısayolların çıkması ve düzenli kod yazmak için aşağıdaki editörleri kullanabilirsiniz.

Ben projelerim için PhpStorm kullanıyorum. Ancak alternatif olarak tek sayfalık, kısa kodları düzenlemek için Brackets‘a da ihtiyaç duyabiliyorum.

PHP ile Neler Yapılabilir ?

PHP’nin kullanım alanı oldukça geniştir. Günümüzde Google, Facebook, Wikipedia, WordPress, Joomla, vBulletin ve SMF gibi birçok projede PHP kodlarının kullanıldığını görebiliriz. PHP ile yapabileceklerimizin bazılarını aşağıda listeleyebiliriz.

  • E-Ticaret/Kurumsal/Forum/Haber vb web siteleri
  • Facebook, Instagram gibi platformlar ile etkileşimli çalışabilecek API’ler
  • CRM (Musteri İlişkileri Pazarlaması) yazılımları
  • Veri tabanı kullanılarak geliştirilebilecek uygulamalar
  • E-posta işlemleri
  • Ses/Video düzenleyebilme (FFmpeg ile yapılabilir)
  • Resim çıktısı üretebilme
  • PDF, XML, XLS vb. belgeleri okuyabilme ve oluşturabilme
  • Flash filmleri oluşturabilme (libswf veya Ming ile yapılabilir)
  • Komut satırı uygulamaları
  • Masaüstü uygulamaları (PHP-GTK ile yapılabilir ancak yetersizdir)

PHP’nin Avantajları

  • Kullanımı ve öğrenmesi diğer dillere göre daha kolaydır.
  • Açık kaynak kodludur. PHP’nin gelişimine siz de yardım edebilirsiniz.
  • Düşük maliyetli sunucularda yüksek performanslı çalışabilir.
  • Linux, Microsoft Windows, Mac OS gibi bir çok işletim sistemi üzerinde çalışabilir.
  • MySQL, Microsoft SQL ve Oracle veritabanı gibi birçok veritabanı ile çalışabilir.
  • Laravel, Symfony, CodeIgniter, Zend ve Cake PHP gibi birçok Framework bulunuyor. Bu Frameworkler ile projelerinizi daha kısa sürede oluşturabilirsiniz. Ayrıca Frameworkler, projelerinizin saldırı ve tehditlere karşı daha güvenli bir yapı sunar.
  • Web geliştiricileri tarafından kullanım oranı oldukça yüksektir. Karşılaştığınız hataların çözümlerini, kısa sürede bulabilirsiniz. (Dünya üzerindeki web sitelerin %82’si PHP’yi kullanmaktadır, kaynak: w3techs.com)
  • GitHub üzerinden işlerinizi kolaylaştıracak bir çok kütüphane bulabilirsiniz.
  • Composer sayesinde, kütüphanelerin kurulumunu ve güncellemesini kolaylıkla yapabilirsiniz.

PHP’nin Dezavantajları

  • PHP’de yapılan basit bir hata, ilişkili sayfaların hiç açılmamasına neden olabilir.
  • Sunucular PHP sürümlerinin farklılığı, projenizin hiç çalışmamasına neden olabilir. Yani localhost üzerinde kodladığınız bir proje, sunucu veya hosting ortamına atıldığında, PHP sürümlerinin uyuşmazlığı nedeniyle farklı hatalar ortaya çıkabilir veya çalışmayabilir.
  • Fonksiyonların Return Type‘ı belirlenemiyor. Yani bir fonksiyonun dönüş tipi integer, string vb. olarak tanımlanamıyor. Eğer açıklama satırı yoksa bunu anlamanız vakit alabiliyor. (Ancak PHP 7 ile bu sorun çözülmüştür.)
  • Yaygın olarak kullanılması bir avantajdır ancak bu bize bir de dezavantaj doğuruyor. Çok sayıda PHP geliştiricisinin bulunması, PHP yazılımcılarının maaş ortalamasını düşürmüştür. Örneğin, bir Java geliştiricisi ile aynı konumdaki PHP geliştiricisinin maaşları büyük oranda farklılık göstermektedir. Çünkü deneyimli bir PHP geliştiricisi kolaylıkla bulunabilir, ancak bir Java geliştiricisi için aynısını söyleyemeyiz.

Sonuç

PHP öğrenilmesi, kullanılması ve geliştirilmesi oldukça kolay bir dildir. İnternet (özellikle GitHub) üzerinden PHP ile yazılmış çok sayıda yazılım/script bulabilirsiniz. Eğer HTML, CSS ve JavaScript dillerine hakimseniz PHP kullanarak kendi projelerinizi rahatlıkla üretebilirsiniz.

Bir Cevap Yazın