Home

  • PHP Dersleri 7: Fonksiyonlar – 1

    Dizi değişkenleri konusuna geçmeden önce fonksiyonlar konusuna girmenin daha isabetli olacağını düşünüyorum. Fonksiyonlar konusunu ise 2 ayrı derse bölerek anlatmak daha doğru olacak.

    İlk dersimizde, bir değer döndürmeyen fonksiyonları ele alırken, ikinci dersimizde değerleri geri döndüren ve özyinelemeli fonksiyonları ele alacağız.

     

    Fonksiyon kısaca pek çok defa yapılacak bir işlem parçasını bir isim altında kurallaştırmak olarak tanımlanabilir.

    Bir fonksiyon php’de şu şekilde tanımlanır:

    function isim(argüman1, argüman2, argüman3,….., argümann){

    Gövde

    }

    Örneğin iki sayının toplama işlemi yapan topla isimli bir fonksiyon nasıl tanımlanabilir?

    Öncelikle fonksiyonumuzun iki argümanı olacak, ismini topla koyalım ve ekrana iki sayının toplama operatörünü yazdırsın. Echo komutunu kullanacağız bunun için de. Bütün bu kısıtları koyduktan sonra fonksiyonumuzu yazması çok kolay:

    function topla($bir, $iki){

    echo $bir + $iki . “</br>”;

    }

    Şimdi 7. Ders klasörümüze index.php dosyası açıyoruz ve şu scripti yazıyoruz.

    <?php
    function topla($bir, $iki){
        echo $bir + $iki . "
    "; } function cikar($bir, $iki){ echo $bir - $iki; } topla(1, 2); cikar(15, 5); ?>

     

    Siz de bölme ve üs alma işlemlerini içeren iki fonksiyon yazıp yukarıdaki gibi ekrana bastırın.

    Bir dahaki derste değer döndüren ve özyinelemeli fonksiyonlardan bahsedeceğiz. Bir dahaki derse kadar yorumlarınızı ve önerilerinizi bekliyorum.

  • PHP Dersleri 6: Sabitler

    Değişkenlerden söz ettik. Bir de değişkenlerin değeri değişmeyen bir cinsi var. Onlara da sabitler diyoruz.

    Sabitler tanımlandıktan sonra bir daha değiştirilemiyor, bunları genellikle siteye ait konfigürasyonlarda kullanıyoruz. Örneğin veritabanı kullanıcı adı sabit olarak atanabilir.

    Bu ders çok kısa sürecek şimdide söylemek isterim.

    Bir sabit tanımlamak için define() fonksiyonunu kullanıyoruz.

    define(isim, değer) şeklinde tanımladığımız sabite ait değere, constant fonksiyonu ile erişebiliyoruz. constant(isim) yazarak değer’e ulaşabiliyoruz.

    Örneğin:

    define(“hi”, “selam”);

    echo constant(“hi”);

    ekrana selam bastırır.

    Şimdi katar toplama operatörü, değişken ve sabitleri aynı anda kullanarak bir örnek yapacağız. Ders 6 içerisine bir index.php dosyası açarak içerisine bunu yazıyoruz:

    
    

    Çıktısı ise bu şekilde oluyor:

    Sabitlerle ilgili anlatalacak konu bu. Bir dahaki derste görüşene kadar yorum ve önerilerinizi bekliyorum.

  • PHP Dersleri 6: Sabitler

    Değişkenlerden söz ettik. Bir de değişkenlerin değeri değişmeyen bir cinsi var. Onlara da sabitler diyoruz.

    Sabitler tanımlandıktan sonra bir daha değiştirilemiyor, bunları genellikle siteye ait konfigürasyonlarda kullanıyoruz. Örneğin veritabanı kullanıcı adı sabit olarak atanabilir.

    Bu ders çok kısa sürecek şimdide söylemek isterim.

    Bir sabit tanımlamak için define() fonksiyonunu kullanıyoruz.

    define(isim, değer) şeklinde tanımladığımız sabite ait değere, constant fonksiyonu ile erişebiliyoruz. constant(isim) yazarak değer’e ulaşabiliyoruz.

    Örneğin:

    define(“hi”, “selam”);

    echo constant(“hi”);

    ekrana selam bastırır.

    Şimdi katar toplama operatörü, değişken ve sabitleri aynı anda kullanarak bir örnek yapacağız. Ders 6 içerisine bir index.php dosyası açarak içerisine bunu yazıyoruz:

    
    

    Çıktısı ise bu şekilde oluyor:

    Sabitlerle ilgili anlatalacak konu bu. Bir dahaki derste görüşene kadar yorum ve önerilerinizi bekliyorum.

  • PHP Dersleri 5: Operatörler

    Programlamanın büyük kısmının matematikle ilgili olduğunu illa ki bir yerde görmüş okumuşsunuzdur. Nasıl ki matematikte işlemler varsa, programlama dillerinde de işlemler var. Bu işlemler için de kullandığımız operatörler ve işlem önceliğimiz var.

    Bu dersimizde aritmetik operatörlere ve işlem önceliği konusuna değineceğiz.

    PHP’de 38 tane operatör var. Bunları tamamı ile örnekleri şimdi yapmayacağım. Zaten ilerleyen konular içerisinde hepsinin kullanımını bulacaksanız. Aşağıdaki tablolarda PHP’deki operatörleri bulabilirsiniz.

    Aritmetik Operatörler

    Operator İsim Örnek Sonuç
    + Toplama $x + $y $x ve $y toplamı
    Çıkarma $x – $y $x ve $ farkı
    * Çarpma $x * $y $x ve $y çarpımı
    / Bölme $x / $y $x/$y bölümü
    % Mod $x % $y $x/$y’den kalan
    ** Kuvvet alma $x ** $y $x’in $y. Kuvveti. (PHP 5.6 ve üzerinde)

     

     

     

    Atama operatörleri

    Atama Diğer Gösterim Açıklama
    x = y x = y Sağdaki değeri sola atar
    x += y x = x + y Toplama
    x -= y x = x – y Çıkarma
    x *= y x = x * y Çarpma
    x /= y x = x / y Bölme
    x %= y x = x % y Mod (kalan)

     

    Kıyaslama Opertörleri

    Operatör İsim Örnek Sonuç
    == Eşit $x == $y1 $x ve $y değerleri aynı ise True döndürür
    === Aynılık $x === $y $x ve $y değerleri aynı ve türleri aynı ise True döndürür
    != Eşit Değil $x != $y $x ve $y eşit değil ise True döndürür
    <> Eşit Değil $x <> $y $x ve $y eşit değil ise True döndürür
    !== Aynı Değil $x !== $y $x ve $y türleri farklı veya eşit değiller ise True döndürür
    > Büyük $x > $y $x $yden büyük ise True döndürür
    < Küçük $x < $y $x, $yden küçük ise True döndürür
    >= Büyük Eşit $x >= $y $x, $yden büyük veya eşit ise True döndürür
    <= Küçük Eşit $x <= $y $x, $y’den küçük veya eşit ise True döndürür

    Azaltma Arttırma Operatörleri

    Operatör İsim Açıklama
    ++$x Ön-Arttırım $x’, bir arttırır değerini döndürür
    $x++ Arka-Arttırım $x’i döndürür değerini bir arttırır
    –$x Ön-Azaltma $x’i bir azaltır değerini döndürür
    $x– Arka-Azaltma $x değerini döndürür bir azaltır

    Mantıksal Operatörler

    Operatör İsim Örnek Sonuç
    and ve $x and $y $x ve $y doğru ise doğru
    or veya $x or $y $x veya $y doğru ise doğru
    xor Dışlamalı Yada $x xor $y $x ve $yden biri doğru ise doğru ikisi doğru ise yanlış
    && Ve $x && $y $x ve $y doğru ise doğru
    || Veya $x || $y $x veya $y doğru ise doğru
    ! Olumsuz !$x $x yanlış ise doğru

    Katar İşlemleri

    Operatör İsim Örnek Sonuç
    . Katar Toplama $txt1 . $txt2 $txt1’in sonuna $txt2’yi ekler
    .= Katar Toplamalı Atam $txt1 .= $txt2 $txt2 değerini $txt1’e ekler

    Bir de dizi operatörleri var bunlardan farklı olarak ancak dizileri anlatmadan o konuya girmek havada kalacak. Çok küçük bir örnekle ben bu konuyu noktalayacağım. İlerleyen dönemlerde zaten bu operatörleri sürekli kullanacağız.

    1. ders klasörümüzün index.php dosyasına alttaki satırları yazıyoruz.
    <?php
    $i = 3;
    $j = 3;
    echo $i++ .
    "
    "; echo ++$j . "
    "; echo $i == $j; echo "
    "; echo $i-- . "
    "; echo --$j; ?>

     

    Çıktısı ise:

    Oluyor. Operatörlere ait örneklerle anlattığımız yukarıdaki tablodan çıktıları kıyaslayın.

    Bu dersi burada kesiyorum. Yorum ve önerilerinizi bekliyorum. Kolay gelsin.

  • PHP Dersleri 4: Değişkenler

    Php dersleri bu bölümde değişkenler konusu ile devam ediyor.

    Yazılıma yeni başlayacak arkadaşlar için değişkenler zorlu bir konu aslında. Programlamanın en temel konusu.

    Değişkenleri yeni başlayan arkadaşlar için bir sinema koltuğuna benzetebiliriz. Bir sinema koltuğuna bir seansta Ahmet Bey otururken bir diğer seansta Yiğit Bey oturuyor. Yani koltuğu taşıdığı kişi değişiyor. Ayrıca çiftler, çift koltuğuna oturabiliyor. Tekli koltuğa sığmak sıkıntılı olabilir tabii.

    Üstteki benzetmeden şunu anlıyoruz. Değişken, değeri değiştirilebilen veri saklama kabıdır. Her değişken kendi türünde saklanabilir.

    Evet peki PHP’de bir değişkeni nasıl tanımlıyoruz. PHP’de değişkenler $ işareti ile tanımlanıyor.

    Şimdi ilk örnek olarak bir değişken tanımlayıp ekrana bastıralım.

    İndex.php scriptimizi şu şekilde yazıyoruz:

    
    

    Ve Bu script ekrana sadece bir hello yazdırıyor.

    Değişken Türleri

    Az önce bahsettiğim gibi bir değişken sadece kendi türünde saklanabilir. Herkesin kabı kendine.

    PHP’de 4 çeşit değişken vardır. Bunların ilki Integer denen Tamsayılar.

    İkincisi Boolean denen mantıksal değişkenler.

    String denen yazı katarları.

    Ve ondalık sayıları karşılayan float.

    Hepsinin tanımlanma şekilleri aynı. Şimdi index2.php diye dosya oluşturuyoruz ve içerisine bu scripti yazıyoruz.

    <?php 
    
    $katar = "Merhaba Ben Yiğit"; //String
    
    $tamsayi = 4; //Integer
    
    $katar2 = "4"; //String
    
    $mantiksal = true; //Boolean
    
    $mantiksal2 = false; //Boolean
    
    $ondalik = 4.5; //Float
    
    $katar3 = "4.5"; //String
    
    $katar4 = "false"; //String
    
    
    
    
    echo $tamsayi . "
    "; echo $mantiksal . "
    "; echo $mantiksal2 . "
    "; echo $ondalik . "
    "; echo $katar . "
    "; echo $katar2 . "
    "; echo $katar3 . "
    "; echo $katar4 . "
    "; ?>

     

    Gördüğünüz gibi farklı türlerdeki değişkenleri nasıl tanımlayacağımızı yukarıda gördük. Buradali en önemli detay, çift tırnakla tanımladığımız her şeyin String olması.

    Değişkenleri $ işareti tanımlayabilir ve aynı şekilde erişebilirsiniz.

    Değişkenlerler ilgili PHP’de anlatmam gereken ufak bir konu daha kaldı.

    Değişkenin Değişkeni

    Şimdi index3.php isimli yeni bir dosya açarak içine bunları yazıyoruz.

    
    
    

    Çalıştığında ise ekrana sonDegisken bastığını görüyoruz. Aslında buradaki konu şu $$degisken’i okurken önce sağdaki dolar işareti ve ismini alıyor, gidip bunu değeri ile değiştiriyor yani $degisken1 haline geliyor.

    Değişkenin değişkeni bu şekilde kullanılıyor.

    Kafanızı daha fazla karıştırmadan bu dersi burada sonlandırıyorum. Önerilerinizi ve eleştirilerinizi yorumlarla iletebilirsiniz.

  • PHP Dersleri 3: Markup ile PHP Kullanmak

    PHP Dersleri serimizin bu dersi için ders klasörü altına 3 adında yeni bir klasör açarak başlıyoruz.

    Scriptlere nasıl başlanıp nasıl bitirileceğini görmüştük. PHP dersleri bu derste de HTML ile PHP’yi nasıl harmanlayacağınızı anlatarak devam ediyor.

    Aslında PHP’nin en güzel ve en kötü yanı aslında bu. Küçük işlerde değişkenleri aktarmak yerine, doğrudan HTML markup içerisine yazabiliyorsunuz. Ancak iş biraz büyüdüğünde her şey bir anda çok karışık hale gelebiliyor. Ancak böylesine güzel bir özelliği atlamamak gerekiyor.

    Bu derste yine echo komutunu kullanacağız. Ancak bu defa HTML ile bir araya getireceğiz.

    Yazacağımız script bu şekilde

    
       
            
            
            
       
       
           

    Ben HTML

          

           <?php echo "

    Ben PHP

    "; ?>   

    Bu scriptin bize verdiği çıktı ise aşağıdaki gibi.

    Gördüğünüz gibi PHP ile HTML’i harmanlayabiliyorsunuz. Üstelik PHP bu konuda size bir sınır koymuyor. BÜTÜN HTML markuplarınızı PHP ile yazdırabiliyorsunuz.

    Konu ile ilgili sorularınızı ve yorumlarınızı bekliyorum.

  • PHP Dersleri 2: Başlangıç

    PHP Dersleri serisinin bir önceki dersinde bahsetmiştim. Şimdi hazırsanız artık başlıyoruz.

    Öncelikle her yeni dil başlangıcı gibi ekrana “Hello World” yazacağız. Bunun için Xampp ya da kullandığınız sunucuya ait htdocs klasörü altına gidiyoruz. Ben orada ders diye bir klasör açtım. Altına 1, 2, 3… şeklinde klasörler açarak gideceğim.

    Şimdi 1 klasörünün altına index.php isimli bir dosya açıyoruz.

    Dosyamıza bunu yazıyoruz:

    
    

    Kaydedip, http://localhost/ders/1/ adresini taracımızda açtığımızda karşımıza bu şekilde bir görüntü çıkıyor.

    İlk kodumuzu satır satır açıklayalım.

    Bir programlama dili günlük konuşma dili gibi değerlendirilebilir. Örneğin Türkçe’de özne nesne yüklem şeklinde konuştuğumuz gibi, her programlama dilinin de kendine ait bir dizilimi var.

    PHP dilinde ise dilin ilk kelimesi her zaman <?php dir. Aynı zamanda dilin son kelimesi de ?>dir. Bu ikisi PHP yorumlayıcısına “Burası PHP scripti, çalışmaya başla” ve “Burada script bitiyor artık dur” diyor.

    Bu açılış kapanış etiketleri arasına yazdığınız her satır kod PHP yorumcusu tarafından çalıştırılıyor.

    “echo” da PHP’nin en çok kullanılan ifadesidir. echo kendinden sonra yazılan katarı ekrana yazdırır.

    İkinci dersimizde:

    • Php scriptlerinin nasıl başladığını
    • Php scriptlerinin nasıl bittiğini
    • Ekrana nasıl yazı yazırıldığını

    Öğrenmiş olduk.

    Siz de yorum ve sorularınızla derslerimize katkıda bulunabilirsiniz.

  • PHP Dersleri 2: Başlangıç

    PHP Dersleri serisinin bir önceki dersinde bahsetmiştim. Şimdi hazırsanız artık başlıyoruz.

    Öncelikle her yeni dil başlangıcı gibi ekrana “Hello World” yazacağız. Bunun için Xampp ya da kullandığınız sunucuya ait htdocs klasörü altına gidiyoruz. Ben orada ders diye bir klasör açtım. Altına 1, 2, 3… şeklinde klasörler açarak gideceğim.

    Şimdi 1 klasörünün altına index.php isimli bir dosya açıyoruz.

    Dosyamıza bunu yazıyoruz:

    
    

    Kaydedip, http://localhost/ders/1/ adresini taracımızda açtığımızda karşımıza bu şekilde bir görüntü çıkıyor.

    İlk kodumuzu satır satır açıklayalım.

    Bir programlama dili günlük konuşma dili gibi değerlendirilebilir. Örneğin Türkçe’de özne nesne yüklem şeklinde konuştuğumuz gibi, her programlama dilinin de kendine ait bir dizilimi var.

    PHP dilinde ise dilin ilk kelimesi her zaman <?php dir. Aynı zamanda dilin son kelimesi de ?>dir. Bu ikisi PHP yorumlayıcısına “Burası PHP scripti, çalışmaya başla” ve “Burada script bitiyor artık dur” diyor.

    Bu açılış kapanış etiketleri arasına yazdığınız her satır kod PHP yorumcusu tarafından çalıştırılıyor.

    “echo” da PHP’nin en çok kullanılan ifadesidir. echo kendinden sonra yazılan katarı ekrana yazdırır.

    İkinci dersimizde:

    • Php scriptlerinin nasıl başladığını
    • Php scriptlerinin nasıl bittiğini
    • Ekrana nasıl yazı yazırıldığını

    Öğrenmiş olduk.

    Siz de yorum ve sorularınızla derslerimize katkıda bulunabilirsiniz.

  • PHP Dersleri 1: Giriş

    Ders 1: Giriş

    Merhabalar.

    Eski blogum’da sevilen bir PHP dersleri serisi yapmıştım. Ancak daha sonra o blog kapandığı için, dersleri kaybetmiştim. Bir okuyucum o zaman bunu PDF’e çevirip Rapidshare üzerinden paylaştıysa da artık malum, Rapidshare falan kalmadı. Ben de tekrar bir ders serisi yazmak istedim.

    Biliyorum artık kimsenin vakti yok, o yüzden dersleri hep kısa anlatmaya çalışacağım. Elimden geldiği kadar da bunu eğlenceli bir hale getireceğim.

    PHP bir betik dili, HTML markupları arasına yazılabileceği gibi, kendi başına çalıştırılabilir programlar kodlanmasına imkan veriyor.

    PHP son senelerde, Object Oriented Desteği ile birlikte hızla ilerledi. Çok çeşitli frameworkler yazıldı ve bu işimizi çok kolaylaştırıyor.

    Web sitelerinin yapımında en çok kullanılan dil olması ile PHP popülerliğini uzun süre koruyacağını herkese gösteriyor. PHP dersleri herkesin anlayabileceği şekilde olacak ve sizlerin PHP dilinde hemen kod yazmaya başlamanıza odaklanacak.

    Son yıllarda PHP’de pek çok köklü değişiklik oldu ve eski derslerde kullanılan örnek kodlar geçerliliğini yitirdi. Örneğin PHP ile MySql veritabanı bağlantısı yapmak istediğinizde eskiden mysql eklentisi kullanırdınız. Şimdi bu eklenti PHP’den kaldırılıyor ve onun yerine PDO ile bu işin tamamen nesne tabanlı yapılması sağlanıyor. PHP derslerinde bu şekilde yapılan değişiklikleri göz önünde bulunduracağız.

    PHP ile kod yazmaya bir an önce başlamak için sahip olmanız gerekn yazılımlar:

    • Apache Web Server
    • PHP
    • Metin editörü

    Tabii ki yeni başlayan bir kullanıcı için Apache ile PHP’yi kurmak kolay değil o yüzden Windows ve Linux üzerinde Xampp, OsX üzerinde ise Mampp kurup hemen kullanmaya başlamanızı öneririm. Windows altında editör olarak Notepad++, Linux ve Mac’de ise Atom.io editörünü tavsiye ederim.

    Bu yazılımları 2. Derse kadar hazırlarsanız 2. Derste kod yazmaya başlıyoruz J

     

  • Sinekler Bizi İnek Mi Sanıyor?

    Sinekler Bizi İnek Mi Sanıyor?

    Sineklerle ineklerin ilişkisi malum.

    Bilmeyenler için, sinekler ineklerin her tarafına konar, malum ineklerin de ellerini kullanma yetileri sınırlı olduğundan kovmak için kullanabilecekleri tek organları kuyruklarıdır. Kuyruklarını da her yere değdiremediklerinden tahammül etmek zorunda kalırlar.

    Sineklere sormak çok mantıklı değil, sinekler için varacakları hedefin bir inek, bir aslan ya da bir insan olması arasında bir fark yok.

    Ama inek için bu mevzu biraz daha farklı, inek sinekleri kovmaya çalıştığına göre bu durumdan rahatsız oluyor. Kuyruğuyla her vurduğu yerden gayet güzel de sinekleri kovabiliyor. Ancak o kuyruğun bütün hareket alanı, ineğin poposundan dışarı çıkmıyor.

    Sineklerin tek rahatsız ettikleri canlı inekler değil, verdikleri rahatsızlık, inekler üzerinde çok belli oluyor.

    Musca Domestica
    Musca Domestica

    İnsanlar da en az inekler kadar rahatsız sineklerden. Sıcakta gelirler, soğukta gelirler. Rüzgarda evimizin içine girerler. Ancak hayatta görebileceğiniz sineklerin büyük bir kısmı uçamıyor.

    Doğru duydunuz: uçamıyorlar.

    İnsanlara parazit gibi yapışan, hayatlarımızın içlerine giren ve üzerinize binip, sizden beslenemeye çalışan pek “şey” var. Tüzel ve özel kişiklikler deniyor.

    Şirketler molalarınızı iç etmeye bayılır, sizi verdikleri ücretten çok daha fazla çalıştırmaya bayılır. Sonra da çok haklarıymış gibi, sizin tatilinizi, dinlenme sürenizi de neden çalışmakla geçirmediğiniz konusunda sizi yargılar. (iyi niyetli patronları, yöneticileri tenzih ederim)

    Onlar sinekse biz inek miyiz?

    Pek çok kötü niyetli şirket ve patron sinektirler, sömürücüdürler. Yukarıda tenzih ettiğim güzel kalpli insanlara bir diyeceğim yok tabi.

    Gelelim biz inek miyiz konusuna.

    Biz insanız. Evrimleştiğimiz günden beri, sıkıştırıldığımız kalıpları kırıyoruz. Mağaramızın dışına çıktığımız, ilk gemiyi yaptığımız gün, ilk ata bindiğimiz gün biz insan olduk.

    Değişebildiğimiz, yeni yolları keşfettiğimiz sürece de insan kalacağız.

    Ve her defasında yeni yollar keşfedeceğiz.

    O büyük fabrikaların, kalpsiz patronları ise, yani gücü olanlar, bizi tekrar sıkıştırmak için başka yöntemler arayacak ve tabii ki güçlerini kullancaklar bunu yapmak için.

    Yeni yollar var mı?

    Şuan bir alternatif var mı deseniz onu bilmiyorum. Bilsem ben de kullanırdım en azından.

    Peki yeni bir yol bulacak mıyız?

    Buzul çağını aşabilmiş bir tür için, işten atılma korkusu çok da büyük bir şey değil.

    Ancak şunu söyleyebilrim,

    Sinekler bizi inek sanıyor, insan olduğumuzu anladıkların, ne fabrika, ne ünvanları olacak.