Php nedir? Nasıl oluştu? Nasıl çalışır?

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
Php neden oluşturuldu

Rasmus Lerdorf tarafından Perl'e yakın olarak oluşturalan php "Open Source" (acık kaynak kodu) şeklindedir.
Rasmus PHP yi kişisel sayfalar için herkezin kullanabileceği kadar kolay yapmıştı.
1995 yılında Rasmus bir grup kurdu ve bu grupla PHPyi Perlden ayırıp halen geliştirilmekte olan PHP4ü yarattılar.
Evet artık PHP ile yapabileceklerinizde (neredeyse) sınır yok. Herşey sizin hayal gücünüze kalıyor.

Eh PHP'nin geçmişinden bukadar bahsetmek yeterli sanırım. Ne dersiniz?
Yinede fazla acele etmeyin. İlk kodlarmızı yazmadan önce biraz daha bilgi vereceğim.(Eğlenceye az kaldı)

Nasıl çalışır bu php?


PHP server-side(Server tarafında çalışan) bir dildir.
Siz bir *.php dosyası çağırdığınızda server "<?php" ve "?>" arasındaki kodları serverdaki PHP yorumlayıcısına "Al şu php yi hallet bizameet." diye yollar. Yormlayıcı bunları okur ve yorumladıktan sonra browserınıza html olarak yollar. (böylece kodlarınız görünmemişte olur, sizin ve ziyaretcilerinizin güvenliğide sağlanır.)

Hadi şimdi ksacık bir kod ile örnek verelim ve sonra okumaya devam edelim.

(Bu kodun çalışabilmesi için dosyayı php destekli bir hosta atmanız veya bilgisayarınıza server ve php kurmanız gerekmektedir.
Windowsda server ve php kurulu hakkında gerekli bilgiyi ileride bulacaksını)

---- Aşağıdaki kodları Notepad veya farklı bir text editörüne yazıp ilk.php adıylan kaydedin. ----

<html>
<head> <title>Bu Benim İlk Php Sayfam</title></head>
<body>
<?php
echo ("Merhaba Ferhat");
?>
</body>
</html>


---- İşte ilk PHP sayfamız hazır ----

Bu dosyayı çalıştırdığınız zaman server <?php ve ?> arasıdaki "echo" functionu görür ve php yorumlayıcısına gönderir. Yorumlayıcı bunu gördüğü anda "Aha benim 'Merhaba Evren' yazmam isteniyoo. e yazim bare" der ve ekranda "Merhaba Evren" yazdığını görürsünüz.

Sanırım sorun yok buraya kadar. İlk kodlarda gördüğünüze göre eğleniyorsunuzdur. Ha?
Hadi devam edelim.


 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
PHP ile yapılabilecekler hakkında

Eminim şimdiden meraklandınız ve "Peki ama neler yapabilirim bu php ile?" diyorsunuz.
PHP ile oyun programlıyıp sitedenizde oyun oynatabilirsiniz, üyelik sistemleri yazabilirsiniz.
Ziyaretci defterleri, toplistler, forumlar, counter(sayaç)lar ve daha bir çok şey.

Örneğin koca bir alış veriş merkezi yapabilirsiniz. Yada sitenizde ziyaretcilerin chat yapmasını sağlayın.
Üstelik bunlar için çok fazla bilgi gerekmiyor. PHP(Personal Home Page) denilen bu basit dili öğrenmeniz yeterli.
Eh, tabiki öğğrenmek için beni takip edeceksiniz.

PHP'nin avantajları
Elbetteki PHP'yi seçmemizin sebebi avantajlarıdır.
PHP diğer server-side programların aksine her türlü platformda(Unix, Windows ...) rahatlıkla çalışabilir.
Yazının başında belirttiğin gibi Open Sourcedir.


----- Kısaca Open Source -----
Open source progralar kaynak kodları ile birlikte "ücretsiz" olarak dağıtılır ve kullanıcı, yane siz dilediğiniz gibi değiştirebilir daha sonra dağıdabilirsiniz....
----- Kısaca Open Source -----

PHP'nin gelmiş hazır functionları sayesinde işlemleri daha hızlı yapabilir ve hiçbir eklentiye ihtiyaç duymassınız.
Örneğin sadece küçük bir function ile tek satır kod yazarak mail gönderebilirsiniz.
PHP ile Mysql adlı database bütünleşse bile PHP her türlü database ile rahatlıkla ve sorun çıkartmadan çalışır.
PHP diğerlerinden cok daha hızlı ve güvenlidir.
Hatta PHP ile birkaç satır kod ile resim bile cizebilirsiniz.
PHPnin casesensitive(büyük küçük harfe duyarlı) olmaması yazım kolaylığı ve hız kazandırıyor.


PHPye başlarken böyle şeyleri okumaktan bende sizin gibi sıkılmıştım ancak gerekli işte.
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
PHPyi nasıl kullanabilirsiniz?
Aslınsa php kullanmak için çok fazla zahmete gerek yoktur.
PHP kurulu bi server, kod yazmak için herhangi bir text editörü ve birazık PHP bilmek yeterli olacaktır

Bilgisayarınıza kullanmakiçin en uygunu apache adındaki serverdır. Bunun yanında PHPye(daha önce bahsettiğim yorumlayıcı) ve Mysql'e ihtiyacınız var.
Bunların bir iki dakikada kurulumunu bir sonraki bölümde anlatacağım.

Editör olarak bir Türk'ün azırladığı e dünyanın en iyi PHP editörlerinden biri olarak anılan PhpEd'i öneririm.
PhpEd'in otomatik tamamlama ve renk ayırı sayesinde çok daha hızlıca PHP yazabilceksiniz.

Ben yinede eski alışkanlığım DreamWeaver'i(DW) tercih ediyorum. Bu yazı bile şu anda DW ile yazıyorum


Bilgisayarınıza server ve php kurulumu
Aslında local bir server üzerine php e mysql kurmak bayağı zahmetli iştir.
Ama merak etmeyin, sizi bu dertten kurtaracak birşeyler biliyorum.

PHPTriad adı bir programcığı download edeceksiniz.
Programı çalıştırıp sadee "Next" tuşuna basın 15 20 saniye sonra bilgisayarınıda Apache server, PHP, Mysql e PhpMyadmin kurulu olacak.

Artık herşeye hazırız.
başlamadan önce yapmanız gereken tek şey Apache serverı (ve gerekliyse mysql'ü) çalıştırmak.
Bunun için Başlat/programs/PHPTriad yolunu izlemeniz yeterli olacaktır.

Hazırladığımız sayfaları kullanabilmek için c:\apache\httdoc (ve istediğiniz alt klasorlere) kaydetmelisiniz.

Şimdi daha önce hazırladığımız ilk.php adıyla kaydettiğimiz dosyayı
c:\apache\httdoc klasorne kopyalayın ve browserınızı acıp adrese şunu yazın;
http:\\127.0.0.1\ilk.php

İşte hepsi bukadar.
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
PHP dili
Aslında php sanıldığı kadar zor bir değildir.
Hergün 2 saatini ayırarak 15gün içinde iyi bir php coder olabilirsiniz.
Tabi PHP'nin de diğer diller gibi bir kaç yazım kuralı vardır.

Tüm php kodları (tırnaksız) "<?php" ve "?>" işaretleri arasında yazılır. Böylece server bir php komutu çalıştırmak istendiğini anlar.

PHP de her komutun sonuna ";"(noktalı virgül) işareti konulması zorunludur ve php ; işareti görene kadar function'u çalıştırmaya devam eder.Aksi halde kocaman bir hata mesajı ile karşılaşabilirsiniz. (bu hatayı seveceğini hiç sanmıyorum )


Örnek kod:

<?php
echo ("NaturelGS");
?>

Görüldüğü gibi satır sonunda ; virgül var. Php komutun bittiğini anlar ve ekrana NaturelGS yazdırır.
Aynı şeyi şu şekildede yapabilirdiniz. (iyi bir phpci olmak istiyosanın böye şeyler yapmayın)

<?php
echo ("N
at
u
r
el
GS
");
?>


Berbat görünüyor değil mi?
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
Sizde farketmişsinizdirki PHP ile birşey yazdırırken " " arasında yzıyoruz ve " işaretleri gözükmüyor.
Peki ya "" içerisinde birşeyler yazmak istiyosanız? İşte o anda imdadınıza PHP'nin bu durumlar için olan kurtarcısı ESCAPE koşuyor.
Escape de nedir diyorsunuz değil mi? Escape sadece "\" (backslash(ters bölme işareti)).

Şöyle bir kod ile nasıl kullanıldığını gösterelim.

<?php
echo ("Simto SIFIR \" \" için yazıyor.");
?>
bu kod ekrana şunu yazacaktır;
Simto SIFIR " " için yazıyor.

Çok işe yarıyor değil mi şu escape? )


Html ve PHP
PHP diğer web programlama dilleri gibi sadece program içindir ve tasarım yeteneğine sahip değildir.
Bu yüzden PHP ile birikte html kullanacağız. Tabiki bilmeniz ve dikka tedilmesi gereken bazı şeyler var.


PHP içerisinse Html, JavaScript yazılmasına izin veren bir dildir ve daha önce gördüğünüz echo functionu içerisine html kodu kullanlabilir.

PHP içerisinde Htm için küçü bir örnek yapalım.

<?php
echo ("Aşağıda Link'e dıklayıverinn


<a href=\" \">www.sifir.org[/url]
");
?>


Yukarıda link verilen satırda dagördüğünüz gibi " lardan önce escape işareti (\) kullandım. Eğer bunu yapmasaydım hoş olmayan şeylerle karşlaşacaktım

Sonucunu deneyin ve siz bulun.
Yinede ben bunu kulanmak yerine, PHP programınzı kolayca editlemek ve yeri geldiğinde yeni bir tasarıma yerleştirmek için html ve PHP yi birbirinden ayırmanızı öneriyorum.

Şöyle bir kodda tasarımızı e programınızı kolayca değiştirebilirsiniz;
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
Bir önceki sayda söylediğim kod;

<html><head><title>www.sifir.org</title></head>
<body>
<?php
// aşagıdaki PHP diline ait öğeler hakkında gerekli bilgiyi bir sonrai bölümde buacaksınız.
//Burada amaç sadece html ve PHP'nin ayrılmasını göstermektir.
$coder = "Simto SIFIR";
$site = " ";
?>
<table border="1">
<tr>
<td>Coder: <?php echo ("$coder"); ?> </td>
<td>Site: <a href="<?php echo("$site"); ?> "> Ulaşmak İçin Tıklayın[/url]</td>
</tr>
</table>
</body>
</html>

Yukarıdaki kod sayesinde, oluşabilecek bir çok hatadan kurtulup daha hızlı ve kolay bir şekilde PHP sayfaları hazırlayabilirsiniz.

Değişkenler ve veri türleri

PHPde de her programlama dilinde olduğu gibi değişkenleri kullanırız. Aslında onlarsız bi programda olmaz. (ben onları çok seviyorum )
Değişkenler birşey(ler)i içinde sakladığımız kutular gibidir.
Mesela yemek adlarını bu kutularda (değişkenlerde) saklabiliriz ve lazım oluncada kutumuzdan alırız.
Bu şekilde ziyaretçinin hangi yemeği seçtiğini anlayıp gerekli işlemleri yapabiliriz.
Değişkenlere bir isim ve birde değer verilmeli.
Örneğin yemek adlı değişkene pilav değeri verilebilir.

Değişkenleri tanımlamak için $ işareti kullanılır ve değişken isimlerinde harf, rakam ve _ harici bir karakter kullanamayız.
Bir değişkeni nası atayacağınızı görmek için aşağıdaki örekleri inceleyiniz.

$adi = "Cabbar";
$yasi = "31";
$meslegi = "Doktor";


 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
Değişkenleri kulanmak içinse $ işareti ile birlikte değişken adını yazmamız yeterli.
echo ("$adi");
Yuarıdaki komut $adi değişkenin değeri olan Ahmet'i ekrana basar.

PHPde bir değişkenin değerini diğer bir değişkene atamak, hatta bunu daha dinamik hale getirmek bile mümkün.(çok akkılı şey şu php ya)

$isim1 = "Ahmet";
$isim2 = $isim1;
$isim1 = "Simto";
echo ("$isim2");
[/COLOR]
Yukarıdaki kod ekrana Ahmet yazdıracaktır. Kısaca ikinci değişkene birinci değişkenin değerini verdik.
Daha sonra birinci değişkenin değerini değiştirmemiz sonucu etkilemedi. Değişen birinci değişkeni tekrar ikinci değişkene atamak için düşündüğünüz gibi ikinci değişlene tekrar değer vermeye gerek yok. bunun için sadece & kullanmanız yeterli.

$isim1 = "Ahmet";
$isim2 = &$isim1;
$isim1 = "Simto";
echo ("$isim2");
Yukarıdaki kod ekrana Simto yazacaktır. $isim2 değişkenini ataren kullandıgımız & işareti sayesinde $isim1'in değeri deiştikce $isim2'ninde değişiyor.
şu an size anlamsız gelebilecek bu şeyler ileride çok işinize yarayacaklar aslında.


Veri Türleri
PHPde değişkenerle işlem yapmak için 2 tür veri kullanırız.
Sayısal değerler için Integer,
Alfanumerik değerler için String adlı veri türü kullanırız.
Bir değişken atarken türünü belirlemek için özel bir işlem yapmanıza gerek yoktur. Sadece stirng değerleri " " içerisinde intergerleri düz yazarız.

$string1 = "Hüseyin";
$string2 = "15";
$integer1 = 45;
$integer2 = 5;


Peki buna neden ihtiyaç vardır? şöyleki bunu yazı veya sayıları yan yana dizmek veya matemaktik işlemleri yaptırmak için kullanırız. Yukarıdaki kodda $integer1 ve $integer1 değişkenlerinin toplamı 50 sonucunuverirken, $string1 + $string2 nin sonucu Hüseyin15 'tir.
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
Dizi değişkenler (Array)
Dizi değişken dediğimiz array aslında biraz önce gördüğünüz değişkenlerden farklı değildir. array ile bir değişkende birden fazla değer saklanmasını sağlıyoruz.

<?php
$yemekler = Array (
Array (Yemek => "Pilav", Fiyaf => "1000.000 - TL"),
Array (Yemek => "Patlıcan", Fiyat => "1500.000 - TL"),
Array (Temek => "Patates", Fiyat => 750.000 - TL"),
);
echo ("$yemekler[0][Yemek]");
?>

Yukarıdaki kodu Yemekler.php adıylan kaydedin ve çalıştırın. Ekranda Pilav yazdıgını greceksiniz.
echo komutu ile ekrana $yemekler değişkenin değerini yazmasını istedik. $yemekler değişkeninde birden fazla değer olduğu için yanına
  • ekleyerek ilk sıradakini secmesini istedik. (0 ilk sırayı, 1 ikinci sırayı, 3 dördüncü sırayı verir) Ve son olarak eklediğimiz [Yemek] ile (seçtiğimiz ilk sıranın) Yemek adlı bölümünü seçmesini istedik. Aslında ileride, gründüğü kadar karmaşık olmadıgını anlayacaksınız.
Operatörler
PHPde çeşitli işler (örneğin matematik) yapmak için kuanılan işaretlere operatörler diyoruz.
Örneğin şimdiye kadar kullandığımız = işareti atama operatörüdür.

Matematik operatöreri:


+ Toplama 5+5 =10
- Çıkartma 10-5 = 5
* Çarpma 5*5 = 25
/ Bölme 40/4 = 10

echo (5+5);

Satırıekrana 10 yazdıracaktır. Dikkat ettiyseniz echo komutunda " " işaretlerini kulanmadık. Bunun sebebi matematiksel işlem yapmamızdır.
Aynı işlemleri değişkenler ilede yapmamız mümkündür.

$sayi1 = 26;
$sayi2 = 32;
echo ($sayi1 + $sayi2);

Veya bunun yerine aşağıdakinide kullanabilirsiniz.

$sayi1 = 26;
$sayi2 = 32;
$toplam = $sayi1 + $sayi2;
echo ("$toplam");
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
PHP ile ekrana yazdırmanın yolları

PHP ile herhangi bir yazıyı veya sayıyı ekrana yazdırmak için daha öncedende tanıdığınız echo(); komutunu kulanırız.
echo ("$degisken);
echo ("Ahmet");
echo ("15");
echo (5-2);
echo yazdıtan sonra (" ") arasına ekranda yazmasını istediğimizi yazıp ; ile komutu sonlandırırız.
PHP de ekrana yazdırmak için kulanılaz bir diger komut print tir. Echo'dan tek farklı bir karakter daha uzun. Klavyeden fazladar bir tuşa basmak çok yorucu olabilir.
smiley.gif
Siz en iyisi echo kulanın.

---- Print komutu için örnek ----

print ("Simto");
print ("41");
print (3*6);


---- Print komutu için örnek ----

IF else DöngüsüPHPde "eğer öyle ise şunu yap, yok değise bunu yap" demek için if else özelliğini kullanıyoruz.
Kullanımı gayet basittir.

if (şartlat) {
şartlar varsa bunları yap.
}
elseif (diğer şartlar) {
Diğer şartlar varsa bunları yap
}
else {
Şartların olmadığı her durumda bunları yap
}


PHP if gördüğü zaman verilen şartın doğruluğunu kontrol eder ve.doğru ise gerekli işlemi yapar ve yoluna (elseif, else yi görmeden) devam eder. Eğer if şartı doğru değil ise.devamına bakar elseif görürse buu sınar ve if de yaptıklarını tekrarlar. Eğer elseif şar(lar)ıda doğru değilse else de yapılması istenen işlemleri yapar.

if ($yemek == "Patlıcan") {
echo ("Patlıcan seçtiniz");
}
elseif ($yemek == "Patates") {
echo ("Patates seçtiniz");
}
elseif ($yemek == "Pilav") {
echo ("Pilav seçtiniz");
}
else {
echo ("Ne Yersiniz?");
}

If döngüsünde herzaman else olmak zorunda değildir.
if($cevap == "") {
echo ("Cevap ver lütfen");
}
 
Konu Sahibi
selmansonmez

selmansonmez 

Yönetici
yönetici rank
moderatör rank
Katılım
30 Ara 2018
Konular
376
Mesajlar
680
Tepkime puanı
52
Çevrimiçi zaman
57 dakika
Yaş
34
Konum
Ankara
Ticaret
0 / 0 / 0
For Döngüsü
Döngünün bizim istediğimiz sayıda gerçekleşmesini istiyorsak for döngüsünü kullanabiliriz. For dngüsünde sadee sayaç mantığı kullanılır. örneğin bir değişkene 1 rakamını atarız ve değişkenin değeri 7 olanakadar döngünün devam etmesini sağlarız ve for döngüzü değişmenin değerini her işlemde istediğimiz miktarda (örneğin 2şer) artırır.
For döngüsü şu şekilde kullanılır;


for ( $degisken atama ; koşul ; artış basaması ) {
Koşul doğru ise yapılacak işlere ilişkin komutlar
}



For döngüzüsünde ilk başta bir değiken atıyoruz sonra gerekli şartı ve en sona artış miktarı.

for ($sayac = 1; $sayac <= 7 ; $sayac++ ) {
echo ("<font size= $sayac >
<p> </p>
</font>");
}

Kodu deneyip sonucu inceleyin.

While Döngüsü

While döngüsü şart gerçekleşene kadar istediğimiz komutları uygular.
Mesla $a değişkenin değeri 1 olsun. While $a 10 olana kadar ekrana istediğimiz bir yazıyı yazar ve $a nın değerini 1 arttırır.
Aslında while benim çok sevdiğim bir döngüdür. Hatta diğer döngüleri ben kullanmıyorum bile.
smiley.gif


While (şart) :
Şart var ise yapılacak işler
endwhile;


Aşağıdaki örnektende anlayacağınız gibi while, for'dan pekte farklı değildir.
$sayac = 1;
while ( $sayac <= 7 ) :
echo ("<font size= $sayac >
<p> </p>
</font>");
$sayac ++;
endwhile;
 

Benzer konular

Ana Sayfa Kayıt Ol Giriş Yap
Üst