Her şeyi. PHP temel olarak sunucu-taraflı programlamaya odaklanmıştır, bu nedenle CGİ uygulamalarının yaptığı her şeyi, örneğin formdan veri toplama, dinamik sayfa içeriği yaratma, ya da çerez alıp gönderme işlemlerini yapabilirsiniz. Ama PHP çok daha fazlasını yapabilir.
PHP programlarının kullanıldığı üç temel alan vardır.
Sunucu-taraflı programlama. Bu PHP için en geleneksel ve en temel alandır. Sunucu-taraflı programlama için üç şeye sahip olmanız gerekir. PHP motoru (CGİ ya da sunucu modülü), bir web sunucu ve bir web tarayıcısı. Web sunucusunu PHP'den anlar şekilde kurmanız ve çalıştırmanız gerekir. PHP uygulamasının çıktısına web tarayıcısı üzerinden erişebilirsiniz. kurulum bilgileri bölümünden bununla ilgili daha fazla bilgiye ulaşabilirsiniz.
Komut satırı uygulamaları. Bir PHP uygulamasını komut satırından hiçbir sunucu ya da tarayıcı kullanmadan çalıştırabilirsiniz. Burada tek ihtiyacınız olan PHP motorudur. Bu tip kullanım cron üzerinden (Windows eşdeğeri görev yöneticisi) düzenli çalıştırılan işlemler ya da basit yazı işlem görevleri için idealdir. PHP'nin komut satırında kullanımı bölümünden daha detaylı bilgiye ulaşmanız mümkün.
Kullanıcı tarafında çalışan grafik arayüze sahip uygulamalar. PHP için görsel uygulamaların yazılabileceği en iyi dil diyemeyiz, ancak PHP'yi iyi biliyorsanız ve PHP'nin birtakım ileri seviye özelliklerini kendi kullanıcı taraflı uygulamalarınızda kullanmak istiyorsanız, PHP-GTK eklentisini bu tip programlar yazmak için kullanabilirsiniz. Bu şekilde aynı zamanda platformdan bağımsız uygulamalar yazma şansına da sahip oluyorsunuz. PHP-GTK, PHP için bir eklentidir ve ana dağıtımda yer almıyor. PHP-GTK ilginizi çektiyse, kendi web sitesini ziyaret edebilirsiniz.
PHP bütün büyük işletim sistemlerinde, Linux, birçok Unix türevi (HP-UX, Solaris, OpenBSD vb.), Microsoft Windows, Mac OS X, RİSC OS dahil olmak üzere çeşitli platformlarda çalışabilir. PHP aynı şekilde bugün yaygın biçimde kullanılan web sunucularının büyük kısmını destekler. Bunlara örnek olarak Apache, Microsoft İİS, Microsoft PWS, Netscape ve iPlanet Sunucuları, Oreilly Website Pro, Caudium, Xitami, OmniHTTPD ve daha birçok sunucu sayılabilir. Bu sunucuların çoğunluğunda PHP modül olarak kullanılabilir, geri kalanlarında da CGİ standardı üzerinden PHP çalıştırılabilir.
Sonuç olarak, PHP ile işletim sistemi ve web sunucusu seçme özgürlüğüne sahipsiniz. Dahası, hangi programlama yöntemini kullanacağınızı, fonksiyonel yaklaşımı mı yoksa nesne yönelimli yaklaşımı mı yoksa her ikisini birden mi kullanacağınıza karar verebilirsiniz. Bütün OOP (nesne yönelimli programlama) özellikleri PHP'nin şu andaki sürümünde varolmasa da, birçok kod kütüphanesi ve büyük uygulama (PEAR kütüphanesi dahil) OOP kullanılarak yazılmıştır.
PHP yalnızca HTML çıktı üretmekle sınırlı değildir. PHP'nin kabiliyetleri arasında resim çıktısı üretebilme, PDF oluşturabilme ve hatta Flash filmleri yaratabilme (libswf ve Ming kullanarak) vardır. Aynı şekilde XHTML ya da XML gibi her tür yazı içeren dosyayı yaratabilmeniz mümkün. PHP bu dosyaları otomatik olarak yaratabilir ve ekrana yazdırmak haricinde sizin için dosya sisteminde saklayabilir, böylece dinamik içeriğiniz için sunucu-taraflı bir depo sistemini kullanımınıza sunabilir.
PHP'nin en güçlü ve en çok üstünde durulan özelliklerinden biri, sahip olduğu geniş ve gelişmiş veritabanı desteğidir. PHP ile veritabanı bağlantılı web sayfaları yaratmak son derece basittir. Aşağıda desteklenen veritabanlarının bir listesi bulunuyor:
Bunların haricinde DBX adı verilen uzantı ile farklı veritabanları için aynı kodu kullanarak kodlama yapabilirsiniz. Ek olarak PHP ODBC'yi, Açık Veritabanı Bağlantı standardını destekler, bu şekilde ODBC'yi destekleyen bütün veritabanları ile iletişim kurabilirsiniz.
Adabas D İngres Oracle (OCİ7 ve OCİ8) dBase İnterBase Ovrimos Empress FrontBase PostgreSQL FilePro (salt-okunur) mSQL Solid Hyperwave Direct MS-SQL Sybase İBM DB2 MySQL Velocis İnformix ODBC Unix dbm
PHP farklı hizmetlerle LDAP, İMAP, SNMP, NNTP, POP3, HTTP, COM (Windows için) ve daha sayısız protokol aracılığıyla konuşabilecek bir altyapıya da sahiptir. Hazır modüllerin haricinde ham ağ soketleri açıp bu soketler üzerinden istediğiniz bütün protokollerle çalışabilirsiniz. PHP, WDDX üzerinden sanal olarak web üzerinde hangi dilde yazılmış olursa olsun bütün uygulamalarla haberleşebilir. Ayrıca Java nesnelerinin yaratılması ve transparan olarak PHP nesneleri olarak kullanılabilmeleri önemli bir özelliğidir. Uzaktaki nesnelere erişim için CORBA uzantısı, yine PHP özellikleri arasındadır.
PHP oldukça faydalı doküman işleme özelliklerine sahiptir. Bu yelpaze Genişletilmiş POSİX ya da Perl regular expressions komutlarından XML dosyalarını okumaya kadar uzanır. XML dosyalarının okunması ve erişimi için SAX ve DOM standartlarını destekler. XSLT uzantısı ile XML dokümanlarının biçimlendirilmesi yapılabilir.
E-ticaret alanında PHP'yi kullanacaklar için Cybercash ödeme sistemi, CyberMUT, Verysign Payflow Pro ile iletişim için gerekli uzantılar ve CCVS fonksiyonları hazır halde gelmektedir. Bu şekilde online ödeme işlemleri yapmak kolaylaştırılmıştır.
Bunların dışında, mnoGoSearch arama motoru, İRC Ağ geçidi uzantıları, birçok sıkıştırma aracı (gzip, bz2) için fonksiyon , takvim işlemleri, çeviri fonksiyonları yine PHP'nin diğer birçok uzantısı arasındadır.
Sizin de görebildiğiniz gibi bu sayfa PHP'nin sunabileceği bütün özellikleri ve faydaları anlatmak için yeterli değil. PHP kurulumu bölümünde ve fonksiyonlar adresinde listelenen uzantıların başlangıç bölümlerindeki açıklamalardan her bir uzantı için daha fazla bilgiye ulaşmanız mümkün.