PHP Nedir, Kod Sunucuda mı Tarayıcıda mı Çalışıyor?

Haberci

SEO UZMANI
Yönetici
Katılım
21 May 2023
Mesajlar
754
Tepki
17
Puan
18
908




Bir sayfanın kaynağını görüntülediğinizde ekrana HTML geliyor. Oysa o sayfayı üreten dosyanın uzantısı .php ve içinde tek satır HTML olmayabiliyor. Aradaki bu boşluk, PHP'yi anlamanın en kısa yolu.

Aşağıda PHP'nin ne olduğunu, kodun hangi makinede çalıştığını, HTML'in içine nasıl girdiğini, tarayıcıda çalışan dillerden nerede ayrıldığını ve sunucu tarafında kod çalıştırmanın neyi mümkün kıldığını dilin kendi el kitabına ve MDN'in sunucu tarafı dersine dayanarak bulacaksınız.

PHP ne demek?​


PHP'nin resmî el kitabı, adın "PHP: Hypertext Preprocessor" ifadesinin özyinelemeli kısaltması olduğunu söylüyor. Tanım şöyle devam ediyor: yaygın kullanılan, açık kaynaklı, genel amaçlı bir betik dili; özellikle web geliştirmeye uygun ve HTML'in içine gömülebiliyor.

Buradaki üç sözcük önemli. "Genel amaçlı" olması dilin yalnız web'e kilitlenmediğini, "betik dili" olması derlenmiş bir program üretmeden çalıştığını, "HTML'e gömülebilir" olması da sayfanın tamamını koddan üretmek zorunda olmadığınızı anlatıyor. Başka bir genel amaçlı dilin hangi işlerde kullanıldığını merak ediyorsanız Python ne demek yazımız karşılaştırma için iyi bir başlangıç.

Kod hangi makinede çalışıyor?​


El kitabının PHP'yi tarayıcıda çalışan JavaScript'ten ayırdığı yer tam da burası: kod sunucuda çalışıyor, sonuçta HTML üretiliyor ve istemciye o HTML gönderiliyor. Belge bunu açık bir sonuçla bağlıyor — istemci betiğin çalışmasının sonucunu alıyor, altındaki kodun ne olduğunu bilemiyor.

Tarayıcı tarafında çalışan dilin okuru neyi görebiliyor sorusunu JavaScript ne demek yazımızda ele almıştık. İki yaklaşımın farkı, kaynağın kimin elinde kaldığı.

HTML'in içine nasıl giriyor?​


El kitabındaki tanıtım örneği, sayfanın normal bir HTML belgesi olduğunu, arasına yalnız işini yapan kodun serpiştirildiğini gösteriyor. Kod, belgeye özel başlangıç ve bitiş işaretleri arasında duruyor; bu işaretler PHP kipine girip çıkmayı sağlıyor.

Belge, C veya Perl'de olduğu gibi HTML'i çok sayıda çıktı komutuyla üretmek yerine sayfanın HTML olarak kalmasının dilin ayırt edici yanı olduğunu vurguluyor.

  • Sunucu: Dosyayı okur, kod bloklarını çalıştırır, yerine çıktısını koyar.
  • Ağ: Sonuçta oluşan HTML tarayıcıya gider.
  • Tarayıcı: Yalnız üretilmiş HTML'i görür, kaynak kodu görmez.

Sunucu tarafında kod çalıştırmak neyi çözüyor?​


MDN'in sunucu tarafı programlamaya giriş dersi, büyük ölçekli sitelerin çoğunun gerektiğinde farklı veriyi göstermek için sunucu tarafı kod kullandığını, bu verinin genellikle sunucuda saklanan bir veri tabanından çekilip istemciye gönderildiğini anlatıyor.

Aynı ders, sunucu tarafı kodun en önemli faydasını içeriği tek tek kullanıcılara göre uyarlayabilmek olarak tanımlıyor. Dinamik siteler, kullanıcının tercihlerine ve alışkanlıklarına göre daha ilgili içeriği öne çıkarabiliyor.

Püf nokta' Alıntı:
Sayfada kullanıcıya özel bir şey görünüyorsa, o karar büyük ihtimalle sunucuda verilmiştir.

Sunucu her dosyayı PHP olarak işleyebilir mi?​


El kitabı burada az bilinen bir ayrıntı veriyor: bir web sunucusu bütün HTML dosyalarını PHP ile işleyecek biçimde yapılandırılabiliyor. Böyle bir kurulumda kullanıcıların hangi dosyanın kod içerdiğini anlamasının yolu kalmıyor.

Bu esneklik, aynı zamanda dikkat gerektiren bir yer. Hata çıktısının ziyaretçiye görünmesi durumunda ortaya çıkan riski ve kapatma yöntemini PHP hata gösterme yazımızda anlatmıştık.

Statik sayfayla farkı ne?​


MDN'in dersi, dinamik sitelerin veriyi gerektiğinde farklı gösterebildiğini, bu verinin çoğunlukla sunucudaki bir veri tabanından çekilip istemciye HTML ve JavaScript gibi kodlarla sunulduğunu anlatıyor. Sabit bir dosya ise her ziyaretçiye aynı içeriği verir.

Aradaki fark hız veya güzellik değil, kararın nerede verildiği. Sabit sayfada karar yazarken verilmiştir; dinamik sayfada istek geldiği anda veriliyor.

Her site sunucu tarafı koda muhtaç mı?​


Değil. İçerik ziyaretçiye göre değişmiyorsa, sabit dosyalar hem daha az hareketli parça hem daha az bakım demek. Sunucu tarafı kodun kazancı, dersin vurguladığı gibi içeriği kişiye göre uyarlayabilmekte ortaya çıkıyor.

Bir sitede oturum açma, sepet, yorum veya panel varsa karar zaten sunucuda veriliyor demektir. Böyle bir ihtiyaç yoksa dinamik yapıyı zorunlu kılan bir sebep de yok.

Sık Sorulan Sorular​


PHP nedir?
El kitabının tanımıyla, yaygın kullanılan, açık kaynaklı, genel amaçlı ve HTML içine gömülebilen bir betik dili.

PHP kodu tarayıcıda mı çalışıyor?
Hayır. Belgeye göre kod sunucuda çalışıyor, tarayıcıya yalnız üretilen HTML gidiyor.

Ziyaretçi PHP kodumu görebilir mi?
El kitabı, istemcinin betiğin sonucunu aldığını, altındaki kodun ne olduğunu bilemeyeceğini söylüyor.

PHP yalnız web için mi?
Tanım dili genel amaçlı olarak niteliyor; web geliştirmeye özellikle uygun olduğunu belirtiyor ama oraya sınırlamıyor.

Sayfamın uzantısı .html ise PHP çalışır mı?
Sunucu bütün HTML dosyalarını PHP ile işleyecek şekilde yapılandırılmışsa çalışır.

Özetle​


PHP, HTML'in içine gömülebilen ve sunucuda çalışan bir betik dili. Ziyaretçiye giden şey kodun kendisi değil, çalışmasının sonucu olan HTML. Sunucu tarafında kod çalıştırmanın asıl kazancı, sayfayı isteyen kişiye göre farklı içerik üretebilmek. Dosya uzantısına bakarak hangi sayfanın kod içerdiğini anlamak ise her zaman mümkün değil.

Sitenizde hangi sayfaların sunucuda üretildiğini, hangilerinin sabit dosya olduğunu biliyor musunuz?

Güncelleme: 1 Eylül 2026. PHP'nin resmî el kitabındaki giriş bölümü ve MDN'in sunucu tarafı programlamaya giriş dersi kontrol edildi.



Dijital Dünyanıza Yön Veren Pusula
 

Ekli dosyalar

  • banner_09.jpg
    banner_09.jpg
    4.8 KB · Görüntüleme: 4
Geri
Üst