Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Öğrt.Gör.Dr. Ahmet Cengizhan Dirican GYTE – Bilgisayar Mühendisliği PHP.

Benzer bir sunumlar


... konulu sunumlar: "Öğrt.Gör.Dr. Ahmet Cengizhan Dirican GYTE – Bilgisayar Mühendisliği PHP."— Sunum transkripti:

1 Öğrt.Gör.Dr. Ahmet Cengizhan Dirican GYTE – Bilgisayar Mühendisliği PHP

2 PHP Giriş PHP, Hypertext Proprocessor (Hyper –metin ön işlemcisi) anlamına gelir. PHP ile her türlü işlevselliğe ait program yazılabilir. PHP web sunucuya bir takım işler yaptırmak için kullanılan program yazma dillidir. PHP kodları, HTML sayfaları arasına HTML etiketleri arasında kendi özel ayıraçları arasına yazılır. Ekrana merhaba şeklinde yazı gelir

3 PHP Nasıl Çalışır? WEB SERVER URL HTML PHP Scripti PHP CLIENT (BROWSER)

4 PHP Çalışma Şekli Web Serverlar htm ve html uzantılı dosyalarını sabit diskinde bulundurur ve ziyaretçiye sunar. PHP uzantılı dosyalar da ise PHP derleyicilerin çağrılması gerekir. PHP derleyiciler ise kendine ulaşan metin dosyayı içinde

5 PHP Özelikleri PHP Kodları HTML tagları içine gömülür. PHP scriptleri HTML formları ile kendine sunulan veriyi işleyebilir PHP scriptleri veritabanıyla haberleşebilir. Karışık matematiksel işlemleri yapabilir.

6 PHP ile neler yapılabilir? Veritabanı bağlantılı uygulamalar Dinamik olarak oluşan grafikler, Flash animasyonları Ziyaretçiye, tarayıcıya veya tarihe göre özel durumlar veya içerikler Anketler Tartışma forumları Elektronik ticaret uygulamaları Web tabanlı e-posta uygulamaları XML verilerini yorumlama ve oluşturma İçerik yönetimi Site içi veya dışı arama motorları

7 Neden HTML değil PHP? HTML ile bir web sunucusundaki bir veri tabanı dosyasını açıp okuyamayız Düz yazı dosyalarını da okuyamayız. Bu disklere dosya yazamayız. “ ” ayıraçları arasındaki kaynak kodlarının içeriği istemci tarafında gözükmez. Sadece sonucu gözükür.

8 Neden PHP? Web tabanlı programlama için tasarlanmış Yazım kurallarının basit olması Kaynak kodu açık ve ücretsiz Sunucu hafızasını az kullanır Birçok işletim sistemi üzerinde çalışabilir: LinuxWindows MacOS XSolaris BSD UnixlerNetware

9 Neden PHP ? Birçok web sunucusu yazılımına entegre çalışabilir: ApacheMicrosoft IIS Microsoft PWSNetscape iPlanetXitami Yaygın veritabanı desteği: OracleMySQL PostgreSQL Interbase MS-SQLSybase IBM DB2Informix Birçok eklenti ve hazır kütüphanelerinin olması

10 Kurulum mysql/index.html mysql/index.html PhpMyAdmin – MySQL için web arayüzzü

11 PHP yazım Kuralları Php komutları ;(noktalı virgül) işaretiyle sonlandırılır. Echo,Print ve Printf : Ekrana bilgi yazdırma komutudur. // : Tek satırlık açıklamalar için kullanılır /* ve */ : Birden çok açıklama satırlarında kullanılır. Bu komutlar arasına yazılan tüm PHP komutlarını dikkate almaz. \nYeni Satır geçiş yapar (New Line) \rSatır Başı (Return) \tSekme (Tab) karakteri ekrana merhaba “PHP” dünyası şeklinde yazılır.

12 Dilin Yapısı

13 Ve İlk 'Hello World' cümlemiz: Yazip hello.php olarak kaydedin Example

14 Değişkenler Değişkenleri adının önüne $ işareti koyarak tanımlarız: $adi;$123; Değişkenler, harf, rakam veya alt çizgi (_) ile başlayabilirler; bu karakterleri içerebilirler; ama içinde boşluk veya diğer işaretler bulunamaz PHP'de genellikle değişkenleri değerini atayarak belirleriz $adi = “Mesut";$123 = 123; PHP'de özel bir değişkene değişken adı olarak kullanılacak değerleri de atayabiliriz (bir çeşit pointer kullanımı gibi): $adi = “Mesut"; $degisken = "adi"; print $$degisken; Sonuc olarak browser penceresine Mesut yazar

15 Bu teknik şöyle de kullanılabilir: $degisken = "adi"; $$degisken = “Nurhan"; print "$adi"; print $$degisken; print "${$degisken}"; print "${'adi'}"; Buradaki dört "print" komutu da Browser'a “Nurhan" kelimesini yazdıracaktır.

16 Veri Türleri PHP açısından dünyada altı tür değer vardır: Tamsayı (Integer): 5,124, 9834 gibi Çift (Double): 3,567 gibi Alfanümerik (String): “Fatma" gibi Mantıksal (Boolean): doğru (true)/yanlış (false) gibi Nesne (Object) Dizi (Array)

17 Fonksiyon ve gettype() Değişkenin türünü verir. $alfanumerik = “Yılmaz"; print "İkinci değişkenin adı: \$alfanumerik "; print "Değeri : "; print "$alfanumerik "; print("Türü : "); print gettype( $alfanumerik ) ; //string Sonuc İkinci değişkenin adı: $alfanumerik Değeri : Yılmaz Türü : string

18 Escape Karakteri kurtarma veya ESCaping \'Tek tırnak \"Çift tırnak \\Ters-bölü \$Dolar işareti \nYeni Satır (New Line) \rSatır Başı (Return) \tSekme (Tab) karakteri

19 Settype Değişken türünü değiştirir. $degisken = ; print("Değişkenin değeri : "); print "$degisken "; print("Türü : "); print gettype( $degisken ) ; //çift,ondalık/double print " "; print "İlk değiştirme işlemi: Alfanümerik/String: "; settype( $degisken, string ); //alfanümerik/string print "Değeri : "; print "$degisken "; print("Türü : "); print gettype( $degisken ) ; //alfanümerik/string print " “;

20 isset() Bir değişkenin içinde değer bulunup bulunmadığını sınamasını sağlar. if (isset($bir_degisken)) { print( $bir_degisken ); }

21 Unset() Varolan bir değişkeni yok eder. if (isset($numara)) { print( $numara); print( $adi); print( $soyadi); } else { unset($numara); }

22 empty() isset() fonksiyonun tersi işleve sahiptir Bir değişkene değer atanmamışsa değeri sıfır veya boş alfanümerik (null string) ise, doğru (True) değeri verir. $bir_degisken = 123; echo empty($bir_degisken); $bir_degisken = ""; echo empty($bir_degisken); Bu program parçası Browser penceresine sadece empty() fonksiyonun doğru sonuç verdiği birinci echo() deyiminde 1 yazdıracaktır.

23 is_string(),is_integer(),is_double(), Sınadıkları değişkenin aradıkları türden değer içermesi halinde doğru ('True) sonuç verirler. $a = 6.567; if (is_double($a)) { print ("A Double'dır "); }

24 İşlemciler (Operatörler) = Atama operatoru. $a = "ABC"; Aritmetik işlemciler: +Toplama6+5=11 -Çıkartma6-5=1 /Bölme6/5=1.2 *Çarpma6*5=30 %Kalan (Modulus)6%5=1

25 Küçük bir ayrıntı PHP, tırnak kullanmasanız da bir değişkenin sayı olup olmadığını anlar PHP ayrıca rakamla başlayan alfanümerik değişkenleri sayı olarak kullanmaya kalktığınızda, bu değerin başındaki bütün rakamları sayı olarak kabul eder $a = 6; $b = "22/A" print ($a + $b) Sonuç olarak 28'i verecektir; veya $a = 6; $b = "A/22" print ($a + $b) Sonuç olarak 6 çıkacaktır

26 Bununla birlikte elimizde bir kişinin adı ve soyadı ayrı değişkenler halinde ise, bunları birbirine ekleyerek (concatenation) ortaya yeni bir alfanümerik değişken çıkartabiliriz: $adi = “Esra"; $soyadi = “Ceyhan"; $adi_soyadi = $adi. " ". $soyadi; İşlemciÖrnekAnlamı +=$a += 5$a = $a + 5 -=$a -= 5$a = $a - 5 /=$a /=5$a = $a / 5 *=$a *= 5$a = $a * 5 %=$a %= 5$a = $a % 5.=$a.= "metin"$a = $a" metin"

27 $a=6; ise İşlemciÖrnekÖrnek ==eşitse$a == 5Yanlış/False !=eşit değilse$a != 5Doğru/True ===aynı ise$a === 5Yanlış/False >büyükse$a > 5Doğuru/True =büyükse$a >= 5Doğru/True veya eşitse

28 Birden fazla karşılaştırma örnekleri İşlemciAdıAnlamıÖrnek ||veyasol veya sağ doğru doğru || yanlış = doğru orveyasol veya sağ D. doğru || yanlış = doğru &&vesol ve sağ D. doğru || yanlış = yanlış andvesol ve sağ D. doğru || yanlış = yanlış XorŞartlı-veya Sadece sol veya sağ D. doğru || yanlış = doğru !Değilsol veya sağ yanlışdoğru || yanlış = doğru

29 Örnek $vize = 45; $final = 65; if ($vize >= 50 && $final >= 50) { print ("Öğrenci geçti!"); } else { print ("Öğrenci kaldı!"); } $ortalama = ($vize + $final) / 2; print $ortalama;

30 İşlem Öncelikleri ( ) parantez ++ ve -- / * % + - > == && || = += -= /= %=.= and xor or

31 Sabit Değerler Bir programın bazen başından sonuna kadar değeri değişmeyen değişkenlere denir. $Dolar_miktar = 125; define ( "DOLAR_KURU", ); $TL_Tutar = $Dolar_miktar * DOLAR_KURU; if (defined( "DOLAR_KURU" )) { echo ("Sabit değer daha önce tanımlanmıştı. ");

32 Örnek Sabit Değerler __FILE__ : O anda çalışmakta olan PHP dosyasının adı __LINE__ : Bu ifadenin yer aldığı satırın sayısı PHP_VERSION: PHP'nin sürümü PHP_OS: PHP'nin çalıştığı işletim sistemi PHP_VERSION : PHP'nin sürümü Bunlara ek olarak, E_ERROR, E_WARNING, E_NOTICE ve E_PARSE şeklinde hata durumunda hatanın çeşitli özelliklerini bildiren sabit değerleri de kullanabiliriz. PHP hakkında çok daha geniş bilgiyi phpinfo() fonksiyonunu çağırak alabilirsiniz

33 Tarih ve saat Verisi PHP, o andaki zaman bilgisini, saat, dakika, saniye ve salise olarak; tarih bilgisini yıl, ay, gün (sayı veya isim olarak), programımızın herhangi bir yerinde bize bildirebilir PHP'nin zaman ve tarih belirlemekte kullanabileceğiniz başlıca fonksiyonu getdate() $saat_tarih = getdate() Bu durumda, $saat_tarih dizi değişkeninde sırasıyla şu bilgiler yer alır:

34 Tarih ve saat Bu durumda, $saat_tarih dizi değişkeninde sırasıyla şu bilgiler yer alır: 32saniye 57dakika 6saat 30ayın gün sayısı (1-31) 0haftanın gün sayısı (1-7) 7ayın sayısı (1-12) 2000yıl 211yılın kaçıncı günü Sundaygünün adı Julyayın adı

35 Örnek $tarih = getdate(); foreach ( $tarih as $key=>$val ) { print $key.'='.$val.' '; } print "Gün.:".$tarih[mday].' '; print "Ay..:".$tarih[mon].' '; print "Yıl.:".$tarih[year].' ';

36 Sonuç seconds=3 minutes=30 hours=15 mday=10 wday=4 mon=4 year=2003 yday=99 weekday=Thursday month=April Gün.:16 Ay..:4 Yıl.:2003

37 Php ‘de denetimler If ElseIf Else

38 Kullanımı if ( koşullar ) { koşullar doğru ise yapılacak işlere ilişkin komutlar } elseif (diğer koşullar) { diğer koşullar doğru ise yapılacak işlere ilişkin komutlar } else { diğer her durumda yapılacak işlere ilişkin komutlar }

39 Örnek if ( $sarki == "Güneş Doğacak" ) { echo ("Seçtiğiniz şarkının adı: Güneş Doğacak!"); } elseif ($sarki == "Beklerim Ben") { echo ("Seçtiğiniz şarkının adı: Beklerim Ben!"); } else { echo ("Lütfen bir şarkı seçiniz!"); }

40 switch switch ( değişken ) { case KOŞUL-1 ; Koşul-1 doğru ise yapılacak işlere ilişkin komutlar break; case KOŞUL-2 ; Koşul-2 doğru ise yapılacak işlere ilişkin komutlar break; default: diğer her durumda yapılacak işlere ilişkin komutlar }

41 Örnek $sarki="Derdime Derman"; switch ( $sarki ) { case "Güneş Doğacak" ; echo ("Seçtiğiniz şarkının adı: Güneş Doğacak ") ; echo ("Merhaba") ; break; case "Derdime Derman" ; echo ("Seçtiğiniz şarkının adı: Derdime Derman ") ; echo ("Selam") ; break; default: echo ("Seçtiğiniz şarkının adı bilinmiyor ") ; } Sonuç: Seçtiğiniz şarkının adı: Derdime Derman Selam

42 while döngüsü while (koşul) { Koşul doğru ise yapılacak işlere ilişkin komutlar }

43 Örnek $sayac = 1; while ( $sayac <= 7 ) { print ("Selam". " "); $sayac ++; }Sonuç: Selam Selam Selam Selam Selam Selam Selam

44 do..while do { Koşul doğru ise yapılacak işlere ilişkin komutlar }while (koşul);

45 Örnek $sayac = 1; do { print (“merhaba". " "); $sayac ++; } while ( $sayac <= 4 ) ;Sonuç merhaba merhaba

46 For Döngüsü for ($sayac = 4; $sayac <= 7 ; $sayac++ ) { print (“dunya donuyor"); } dunya donuyor dunya donuyor

47 Foreach foreach döngüsü, bir dizi değişkenin bütün elemanları için, arzu ettiğiniz işi yapar. döngü, ona adını verdiğiniz değişkenin içindeki bütün değerler bitinceye kadar devam edecektir. foreach ($ogrenciler as $ogrenci) { print ("$ogrenci "); } foreach döngüsü, bir dizi değişkenin adını içinden değer çekilecek kaynak olarak ister; bunu "as" (olarak) kelimesi izler; sonra diziden alınacak her bir değeri geçici olarak tutacak değişkenin adı verilir.

48 Örnek $ogrenciler = array ("Özbay", "Muharrem", "Hasan", "Şahika"); foreach ($ogrenciler as $anahtar=>$deger) { print ("$anahtar = $deger "); } Sonuç 0 = Özbay 1 = Muharrem 2 = Hasan 3 = Şahika

49 Örnek $ogrenciler = array ( array ( adi => "Özbay", soyadi => "Altun"), array ( adi => "Muharrem", soyadi => "Taç"), array ( adi => "Hasan", soyadi => "Civelek"), array ( adi => "Şahika", soyadi => "Ak") ); foreach ( $ogrenciler as $ogrenci ) { foreach ( $ogrenci as $anahtar => $deger ) { print ("$anahtar = $deger "); } print (" "); } Sonuç adi = Özbay soyadi = Altun adi = Muharrem soyadi = Taç adi = Hasan soyadi = Civelek adi = Şahika soyadi = Ak

50 Break Döngüyü sona erdirmek için for ($sayac = 1; $sayac <= 10 ; $sayac++ ) { if ( $tekrar = 5 ) break; $tekrar=$tekrar+1; }

51 Continue Döngüyü devam ettirir. $sayac = -5 ; for (; $sayac <= 7 ; $sayac++ ) { if ( $sayac <= 0 ) continue; print ("Afyon-Bolvadin "); } 7 Kez Afyon-Bolvadin yazar

52 Fonksiyonlar function title_yaz($metin) { print (" $metin \n"); } // Başka kodlar buraya girebilir title_yaz("PHP'de Fonksiyonlar");

53 Örnek-2 function topla ($sayi1, $sayi2) { $sonuc = $sayi1 + $sayi2; return $sonuc; } $sayi1 = 12; $sayi2 = 5; print topla($sayi1, $sayi2);

54 Varsayılan değer function yazdir ($metin, $boyut=3) { print (" $metin "); } // Başka kodlar buraya girebilir yazdir("Bu Başlık", 5 ); yazdir("Bu Başlık"); Bu Başlık

55 Değişkenlerin kapsamı: global ve static $metin = "Başkalarına yararlı olmanın sınırı yoktur!"; function yazdir () { global $metin; print (" İşte metin: $metin "); } // Başka kodlar buraya girebilir yazdir(); Burada global $metin; satırını kullanmaz isek değişkenin değeri yazdırılamaz.

56 Dizi değişkenler $ogrenciler = array ( array ( adi => "Özbay", soyadi => "Altun"), array ( adi => "Muharrem", soyadi => "Taç"), array ( adi => "Hasan", soyadi => "Civelek"), array ( adi => "Şahika", soyadi => "Ak") ); // Buraya başka kodlar girecek print $ogrenciler[0][adi].' '; print $ogrenciler[2][soyadi];// Özbay Civelek

57 Tek boyutlu dizi değişkenler $ogrenciler = array ("Özbay", "Muharrem", "Hasan", "Şahika"); $personel[] = "Hasan"; $personel[] = "Ahmet"; $personel[] = "Yılmaz"; $personel[] = "yaşar"; print $ogrenciler[2];// Hasan print $personel[3];// yaşar

59 HTTP_ENV_VARSHTTP Sunucu programın çalışmakta olan PHP dosyası için oluşturduğu çevre değişkenlerinin yazılı olduğu dizi değişken. Bu değişkenin içinde şu unsurlar bulunur: HOSTNAME: Sunucunun IP adresi SHELL: Unix sisteminde kullanılan Shell programı HOSTTYPE: Sunucunun adı ve sürünü OSTYPE: Sunucu'nun işletim sistemi HOME: Çalışan programın kök dizini PATH: Çalışan programın Sunucu'daki yolu HTTP_SERVER_VARSSunucu programın çalışmakta olan PHP dosyasına sunduğu bazı bilgilerin bulunduğu dizi değişken. Bu değişkenin içinde şu unsurlar bulunur: PHP_SELF: Çalışan PHP programının bulunduğu dizin ve adı PATH_TRANSLATED: Çalışan PHP programının fiziksel yolu HTTP_GET_VARSBir Form'dan GET metoduyla alınan bilgilerin anahtar=değer çiftleri olarak kaydedildiği dizi değişken HTTP_POST_VARSBir Form'dan POST metoduyla alınan bilgilerin anahtar=değer çiftleri olarak kaydedildiği dizi değişken HTTP_USER_AGENTZiyaretçinin bilgisayarında kurulu Internet Browser programı QUERY_STRINGForm ile bilgi alırken GET metodunu kullandığımız takdirde, Browser'ın göndereceği bilgilerin tutulduğu değişken REMOTE_ADDRZiyaretçinin bilgisayarına ISS tarafından atanmış IP adresi REQUEST_METHODForm ile gelen bilgilerin gönderildiği metod: GET veya POST REQUEST_URIO anda çalışmakta olan PHP dosyasının adı ve varsa bu ada eklenmiş Query_String SCRIPT_FILENAMEO anda çalışmakta olan PHP programının dosya adı SCRIPT_URIO anda çalışmakta olan PHP programının tam URL adresi SERVER_ADDRSunucunun IP adresi SERVER_PROTOCOLSunucunun HTTP protokolünün sürümü

60 Faydalı Siteler


"Öğrt.Gör.Dr. Ahmet Cengizhan Dirican GYTE – Bilgisayar Mühendisliği PHP." indir ppt

Benzer bir sunumlar


Google Reklamları