PHP nedir?
PHP adını "Personal Home Page tool"
kelimelerinin baş harflerinden almıştır. PHP, özellikle
dinamik web sayfaları yaratmak amacıyla geliştirilmiş,
sunucu tarafında çalışan (ASP tarzı) bir programlama
dilidir. Bir ziyaretçi sayfanızına girdiğinde, sunucu
PHP komutlarını çalıştırır ve o anda bir HTML çıktısı
üretir. Ziyaretçinin bütün görebileceği bu çıktı olur.
PHP kodunu göremez. Dinamik sayfa kavramı da buradan
gelmektedir. Ziyaretçinin kullandığı tarayıcıya, günün
saatine ve akla gelebilecek her türlü değişkene bağlı
olarak farklı bir sayfa yaratılıp gönderilebilir. Bu
şekilde MyYahoo tarzı, tamamıyla kullanıcıya özel
sayfalar yaratmak PHP ile hiç de zor değildir.
Örnek 1-1. Giriş örneği
<html>
<head>
<title>Örnek</title>
</head>
<body>
<?php echo "Merhaba Dünya!"; ?>
</body>
</html> |
Eğer daha önceden Perl ya da C gibi
dillerle CGI scripti yazdıysanız, PHP'nin HTML kodunun
içine bu kadar basit bir şekilde gömülebildiğine
şaşırmışsınızdır. PHP kodu özel başlangıç ve bitiş
tagleriyle sınırlandırılır ve bu tagler sayesinde PHP
moduna girme ve PHP modundan çıkma imkanınız olur.
PHP ne yapabilir?
En basit haliyle, PHP, formdan bilgi
almak, dinamik sayfa içeriği yaratmak, cookie göndermek ve
almak gibi diğer bütün CGI programlarının yaptıklarını
yapabilir. PHP'nin belki de en güçlü olduğu ve en çok
kendini gösterdiği özelliği, geniş veritabanı
desteğidir. Veritabanı kullanan bir site hazırlamak çok
kolaylaştırılmıştır. Desteklenen veritabanlarını şöyle
sıralayabiliriz:
Adabas D |
Interbase |
Solid |
dBase |
mSQL |
Sybase |
Empress |
MySQL |
Velocis |
FilePro |
Oracle |
Unix dbm |
Informix |
PostgreSQL |
Microsoft SQL |
PHP ile adı en çok geçen veritabanı
MySQL'dir. Bizim için de öncelik MySQL olacak,
örneklerde sıkça MySQL kullanımına rastlayacaksınız.
Bütün bu veritabanlarının dışında, ODBC kullanarak
Access gibi diğer veritabanlarına da ulaşmanız mümkün.
ODBC konusuna ilerki yazılarda değineceğiz.
PHP aynı zamanda diğer hizmetlerle
iletişimi sağlayan IMAP, SNMP, NNTP, POP3 ve hatta HTTP
protokollerini destekler. Bütün bu protokollerin dışında
soket programlayabilmenizi ve adı geçmeyen diğer
protokollerle de iletişim kurabilmenizi sağlar.