Selam ile...
Bu dökümanda PHP ye yeni başlamış ve muhtemelen daha önce benzer dillerle ilgisi olmuş BT ' ci arkadaşlara temel anlamda bilgiler vermeye çalışacam. Bilinen ifade ile; " Temelde her programlama dili birbirine benzer ", doğru ifade ile; " Programlama dilleri genelde İngilizce kelimeler üzerine kurulmuştur. " diyebiliriz. Yani bir programlama dilini öğrenmek için illede daha önceden bir programlama dili ile uğraşmanız gerekmiyor. Ben kendi adıma Programlama dillerini bir çok kritere göre değerlendiririm. Sonuç olarak en sağlam ve kullanıcı dostu dil üzerinde yoğunlaşırım. İşte size sağlam dillerden bir tanesi...
PHP 'nin Yolları Taştan...
Bu başlıkta nedir böyle deyip şaşırmayın; birazdan PHP nin bitmek bilmeyen yolunda, sırasıyla önemli taşları tanıyacaz... Bir programlama dilinin en önemli giriş noktaları, çıktı fonksiyonları, değişkenler ve operatörlerdir. Zira bunları anladıktan sonra o dilden zevk almaya başlar basit uygulamar ile kendinizi tatmin eder ve bilinen şekilde " artık bende program yazarım ", doğru şekilde " artık bende azimle daha geniş uygulamara geçebilirim. " diyebilirsiniz.
> Sen Çıkardın Beni Baştan...
Bir programlama dilini diğerlerinden üstün tutan ve sizin için değerli olmasını sağlayan, size zevk veren her şey PHP ' de var...
>> Bir Dünya Klasiği, " Merhaba Dünya" örneği..
Ne ilginçtir ki, programlama dilleri üzerine yazılmış tüm kitaplarda, ilk uygulama her zaman ekrana " Merhaba Dünya " yazısını çıkartmaktır. Bunun nedenini bir ara düşünmüş ve dünyadaki ilk programlama dilini bir uzaylının bulmuş olacağı kanaatine varmıştım. Her neyse...
Bizde buna benzer bir uygulama yapalım...
Not : Ben bilgisayarınızda PHP kodlarını çalıştırabileceğiniz azda olsa html bilgisine sahip olduğunuzu düşünerek anlatıyorum.
Not : Dosya olarak kaydediceğiniz, inceleyeceğiniz tüm kodlar kırmızı ile belirtilmiştir. Php kodları ise koyu şekilde gösterilmiştir. PHP dosya uzantıları .php şeklindedir. ( Eski vesiyonlarda .php3 idi... )
HTML-Kodu:
<html>
<title> PHP 'ye Giris </title>
<body>
<? echo " Merhaba Uzayli " ; ?>
</body>
</html>
Yukarıdaki kodları, bir metin editoru ile ( ör : notepad, pico ) kaydedip ( ör : 1.php ) çalıştırdığınız zaman , Browser pencerenizin ekranında " Merhaba Uzaylı " yazdığını göreceksiniz... Kaynak koduna baktığınız zaman ise;
HTML-Kodu:
<html>
<title> Temel PHP </title>
<body>
Temel PHP Bilgisi</body>
</html>
görülür...
Dikkat edeceğiniz üzere sizin yazdığınız ve kaydedip çalıştırdığınız 1.php dosyasının içeriği ile browser pencerenize yansıyan içerik farklıdır.
Bunun nedeni PHP nin yapısı nedeni ile sizin ona gönderdiğiniz dosya içerisinde kendine özgü tag ( TR : etiket ) ' ları bulup içindeki komutları ve bilgileri işleyip kullanıcıya salt html sunmasıdır.
Not : PHP ' nin kodları işlemesi için gereken tag <? ve ?> ' dir. PHP kodlara işlemeye
<? işareti ile başlar ve
?> işareti ile bitirir.
Merhaba Uzaylı örneğine bakacak olursanız
PHP- Kodu:
<? echo " Merhaba Uzaylı " ; ?>
satırında bunu görebilirsiniz. Tabi burada tag içerisine yazılacak komutları öğrenmek büyük zaman alacaktır. Çünkü PHP son zamanlarda geliştirilmekte olan bir dil olduğu için aynı komutlar içerisinde fonksiyonlar sunmaktadır. ( Komut, fonksiyon gibi terimleri şimdilik dert etmeyin ileride yeterince anlıyacaksınız. )
Burada PHP de öğreneceğimiz ilk komutu görüyorsunuz.
echo komutu... Bu komut ekrana çıktı yapmamızı sağlayan komuttur.
Kullanımı :
echo "Çıktı Değeri"
Kullanımdan anlıyacağınız gibi PHP de komutların kullanımı , o komutun karakteristiğine göre kolay ve zordur, PHP de en basit komutlardan biri echo komutudur. Echo komutunu kullanırken ekrana basılacak değerin
" ( çift tırnak ) işaretleri ile belirlenmiş olması gerekmektedir. ( çift tırnak kullanımı ekrana basılacak değere bağlıdır ve olmayabilirde, ileride değişkenler konusunda bunu öğrenicez. )
Bizde bu komutu kullanarak ;
HTML-Kodu:
<html>
<title> PHP 'ye Giris </title>
<body>
// Ilk basta standart HTML kodlari ile
//Basligi ( title ) " PHP 'ye Giris " olan bir sayfa yaptik.//daha sonra;<? echo " Merhaba Uzayli " ; ?>
PHP nin işlemesi gereken kodların başladığını belirttiğimiz
<? tagı ile echo komutunu kullanarak ekrana Merhaba Uzaylı yazısını yazdırdık. Echo komutunun bitimindeki/sonundaki noktalı virgül (
; ) işareti dikkatinizi çekmiştir. Bu işaret ( noktalı virgül ) PHP de her satırın sonuna koyulması gereken bir işarettir. ( bazı durumlar haricinde... ) Bu sayade PHP o kod satırının bittiğini anlar.
ve nihayetinde
?> tagı ile PHP kodunun bittiğini belirttik.
Not : Kullanıcılar için en zor durumlardan biri, en çok yapılan hatalardan biri olan Parse Error hatalarıdır. Bu hata genellikle noktalı virgül işaretinin yanlış yada hiç kullanılmamasından kaynaklanır. ( İleride 500 satırın üzerinde kod yazdığınız zaman bunun önemini daha iyi anlıyacaksınız. )
Son iki satırdada
</body>
</html>
standart HTML kodları ile sayfamızı bitirdik. Şuana kadar kafanızda bir soru işareti oluşmadı ise, muhtemelen bir çok şeyi anlıyamamışsınızdır. Size önerim kafanızda soru işaretleri belirene kadar şuana kadar olan kısmı tekrar tekrar okuyun.
![Smile](images/smilies/smile.gif)
Şuana kadar öğrendiklerimizi
kısaca hatırlayalım...- PHP ' de , html ile php nin işleyeceği kodları ayırmak için <? ?> tagları kullanılır. ( <php ?> taglarıda vardır, aynı işi görürler... )
- PHP ' de ekrana çıktı yapmak için kullanılan komutlardan en kolayı echo komutudur.
- PHP ' de her komut satırının sonuna ; ( noktalı virgül ) işareti getirilir. ( bazı durumlar dışında. )
>> Diğer Yararlı Bilgiler...
Buraya kadar öğrendikleriniz dışında size bir iki kısa dip notla yararlı bilgiler sunmayı uygun gördüm.
Mesala ; Her tasarımcı kodlar arttıkça bazı dizayn notlarını gerekli satırlara ekleme gereği hisseder. Böylece üzerinden bir süre geçmiş kodlar konusunda yabancılık hissetmez. Bu bilinen adıyla " kaçış karakterleri ( escape char. ) " , doğru adıyla ayıraç/belirteç ' lerdir.
Zira PHP ' nin hiç bir şeyden korkusu yoktur, o kaçmaktan öte kullanıcılara dinlenmesi ve önemli yerleri belirtmesi için imkanlar veren bir dildir. Şimdi aşağıdaki kodları bir metin editoru yardımıyla 2.php adıyla kaydedelim.
PHP- Kodu:
<?
echo " Merhaba Uzayli" ; // echo kullanimi
echo "<br>"; // alt satira geç
echo " Merhaba Dünyali"; // echo kullanimi
// echo " Tamam... ";
?>
Çalıştırdığımız zaman alt alta iki satırda " Merhaba Uzaylı " ve " Merhaba Dünyalı " cümlelerini göreceksiniz.
İlk satırda "
echo " Merhaba Uzaylı" ; // echo kullanımı " ile az önce öğrendiğimiz gibi
echo komutu ile ekrana bir çıktı bastırdık.
; ( noktalı vürgül ) işareti ile komutumuzu bitirdik. daha sonra
// işareti ve devamında bir yazı yazdık.
PHP de herhangi bir satır üzerinde eğer bir dizayn notu yada herhangi bir bilgi ekliyeceksek
// işaretlerini kullanırız. PHP
// işaretini gördüğü zaman daha sonraki işleme geçecektir.
Sonraki satırlarda ise (
echo "<br>"; // alt satıra geç ) html nin <br> kodunu ekrana bastırarak alt satıra geçtik. Sonra tekrar ekrana Merhaba Dünyalı yazdırıp, son olarakta
// echo " Tamam... "; satırı ile
echo komutunu kullandık. Bu komut satırının başında
// işareti olduğu için PHP ekrana Tamam yazısını yazdırmadı.
Bazen 4-5 satırı bir anda işlevsiz bırakmamız gerekebilir. İşte ozaman
/* */ işaretlerini kullanırız.
Ör :
PHP- Kodu:
<?
/*
echo " Merhaba Uzayli" ; // echo kullanimi
echo "<br>"; // alt satira geç
echo " Merhaba Dünyali"; // echo kullanimi
// echo " Tamam... ";
*/
?>
Yukarıdaki kodu çalıştırdığımızda ekranda hiç bir çıktının olmadığını görürüz.
Bazende HTML kodları ile PHP kodları karışabilir. ör : Verdana fontu ile 1p büyüklüğünde bir yazıyı php de nasıl yacağımızı düşünün?
Bilmeyenler bunun aşağıdaki şekilde olacağını düşünebilirler.
PHP- Kodu:
<?
echo "<font face="Verdana" size="1">1p büyüklügünde Verdana</font>";
?>
Tabi bunu düşünenler yanıldıklarını ancak, kodu çalıştırdıklarında anlarlar, ve alacakları hata baştan sölediğim parse error hatasıdır. ( Parse error: parse error, expecting `','' or `';'' in xxxxx on line 2 )
Size daha önce PHP 'de
echo komutunun kullanımı hakkında bilgi vermiştim, haztırlayacağınız gibi echo komutunda ekrana bastıralacak değerin
" ( çift tırnak ) işaretleri arasında olması gerektiğiydi. ( özel durumlar dışında... )
Yukadırdaki hatanın nedeni.. php nin satırın sonunadek yani
; işareti gelene kadar bir çok tırnak işaretinin olmasındadır. Yani html kodunun
" ( çift tırnak ) ları ile echo komutununkiler karışmaktadır.
İşte burada biz html ile echo komutunun işaretlerini bir birinden ayıracaz ve bu hatanın önüne geçmiş olucaz. Aşağıdaki gibi...
PHP- Kodu:
<?
echo "<font face=\"Verdana\" size=\"1\">1p büyüklügünde Verdana</font>";
?>
Burada anlıyacağınız gibi
\ işareti php nin o işaretten sonra gelen karakteri taki önemsenecek değere kadar önemsemiyeceğini gösteriyor.
![Smile](images/smilies/smile.gif)
biraz ilginç oldu ama mantığını anlarsanız çok basit bir şey olduğunu görecekseniz.
Normalde bu kodu
echo "<font face='Verdana' size='1'>1p büyüklüğünde Verdana</font>"; şeklinde yani
' ( tek tırnak ) ilede kullanabilirdik. Ama bu php nin değil html nin bir özelliği olurdu.
Zira php
" ( çift tırnak ) işareti olmadığı için hata vermiyecek, browserımızda html kodundaki bu tek tırnağı doğru kullanacaktı. Ancak gelişmiş html kodlarında özellikle java script in girdiği noktalarda bunu kullanmak yararsız olacaktır.
> Kısa Kısa Özetleyelim...
Her ne kadar ben PHP konusunda çok fazla bilgiye sahip olsamda, her geçen gün başlangıç düzeyinde anlattığım dökümanlarda, insanlara yeni ve değişik şeyler vermeye çalışıyorum. Her anlatımda kullanıcılara daha yakın terimler kullanıp onların anlaması için büyük bir çaba harcıyorum. Bu gün kitap yada internet üzerinde bulunan tüm kaynaklarda kullanıcıları belli çıkmaza sürükleyen noktaların önüne geçmek için sadece benim çabalarım yeterli olmuyor.
Kullanıcıların ilgi duydukları alanlarda bazı yeni terim ve kelimelerde zorluklar çekmesi kaçınılmaz bir olaydır. PHP 'ninde bu alanlardan birinin içinde olması aslında onun gücünden kaynaklanan bir olaydır. En karmaşığından en basitine kadar bir çok konuda bulabileceğiniz kaynaklardan korkmayın.
Değişken, dizi, fonksiyon, sınıf gibi terimlerin kullanımından önce anlamını öğrenmek sanırım en iyi yöntem olacaktır. Özellikle kitap almayı düşünen arkadaşlar , kitap almadan önce forumları ve mail gruplarını araştırsınlar.
Bana her konuda soru-sorun ve görüşlerinizi yollayabilirsiniz, özellikle php kodlarını çalıştıramayan kullanıcılar vazgeçmeyin ve araştırmaya devam edin.
kaynak:ceviz.net