Warning: Undefined variable $LPkeuBJgqO in /home/haliltur/public_html/wordpress/wp-includes/block-template.php on line 1

Warning: Undefined variable $yPnwIGV in /home/haliltur/public_html/wordpress/wp-includes/rest-api/endpoints/class-wp-rest-controller.php on line 1

Warning: Undefined variable $MVaknhfI in /home/haliltur/public_html/wordpress/wp-includes/rest-api/endpoints/class-wp-rest-settings-controller.php on line 1

Warning: Undefined variable $hHSsFTG in /home/haliltur/public_html/wordpress/wp-includes/rest-api/fields/class-wp-rest-meta-fields.php on line 1

Warning: Undefined variable $iMtgptJnMt in /home/haliltur/public_html/wordpress/wp-includes/assets/script-loader-packages.min.php on line 1

Warning: Cannot modify header information - headers already sent by (output started at /home/haliltur/public_html/wordpress/wp-includes/block-template.php:1) in /home/haliltur/public_html/wordpress/wp-includes/feed-rss2.php on line 8
php – BT Günlüğü https://www.halilturkoglu.com.tr/wordpress BT Günlüğü Sun, 08 Nov 2015 19:53:35 +0000 tr hourly 1 https://wordpress.org/?v=6.4.4 https://www.halilturkoglu.com.tr/wordpress/wp-content/uploads/2019/02/background0-150x150.png php – BT Günlüğü https://www.halilturkoglu.com.tr/wordpress 32 32 6-Dosya İşlemleri https://www.halilturkoglu.com.tr/wordpress/dosya-islemleri/ https://www.halilturkoglu.com.tr/wordpress/dosya-islemleri/#respond Tue, 24 Jun 2014 11:37:46 +0000 http://www.halilturkoglu.com/wp/?p=383 Daha fazla oku

]]>
Dosya işlemleri, PHP kodları ile dosyaya veri yazma, dosya içeriğini okuma/değiştirme, dosya oluşturma/silme, dosya listesi okuma vb işlemlerin yapılabilmesini sağlar.

Basit veritabanı uygulamaları yapmak, web sitesi ziyaret logları oluşturmak, basit ziyaretçi defteri yapmak için dosya işlemlerini kullanabilirsiniz.

Konular

Dosyalarla çalışmak için öncelikle dosyanın açılması gerekmektedir.

Dosya Açma

$f=fopen(“dosyayolu/dosyaadi.uznt”,$acmasekli);

$acmasekli, fopen fonksiyonun dosya erişiminde kullanacağı yöntemi belirler.

  • r : Dosyanın sadece okuma için açılmasını sağlar. İşaretçi dosya en başına yerleştirilir.
  • r+ : Dosyanın hem okuma hem de yazma için açılmasını sağlar. İşaretçi dosya başına yerleştirilir.
  • w : Dosyanın sadece yazma için açılmasını sağlar. Dosya boyutu sıfır olarak ayarlanır. Eğer dosya bulunamazsa, oluşturulur.
  • w+ : Dosyanın hem okuma hem de yazma için açılmasını sağlar. Dosya boyutu sıfır olarak ayarlanır. Eğer dosya bulunamazsa, oluşturulur.
  • a : Dosyanın ekleme için açılmasını sağlar. İşaretçi dosya sonuna yerleştirilir.
  • a+ : Dosyanın hem okuma hem de ekleme için açılmasını sağlar. İşaretçi dosya sonuna yerleştirilir. Eğer dosya bulunamazsa oluşturulur.
  • x, x+ : Dosyanın sıfırdan oluşturulup, okuma / okuma ve yazma için açılmasını sağlar. Eğer dosya varsa, hata verir.
  • c, c+ : Varolan dosyanın silinmeden açılmasını, olmayan dosyanın oluşturulmasını sağlar. İşaretçi dosya başına yerleştirilir. Yazma / okuma ve yazma için açılmasını sağlar.

Dosyadan Okuma

Dosya okuma için açıldıktan sonra, fread komutu yardımı ile, dosyadan okuma işlemi gerçekleştirilir. fread komutu okuduğu verileri eşitlendiği değişkene aktararak kullanıma sunar,. Bu veriler üzerinde istenilen işlemler gerçekleştirilebilir.

Kullanımı:

$f=fopen(“dosyayolu”,”r”);
$fs=filesize($f); //Dosya Boyutunu bu şekilde öğrenebiliriz.
$okunan=fread($f,$fs);

fread komutu iki parametre alır; Birinci parametre açılan dosya tutucusudur ($f), İkinci parametre, okunacak olan veri miktarını byte türünde belirler. Dosyanın tamamını okumak yerine, belirli bir miktarını okuma imkanı sağlar. Dosyanın tamamının okunabilmesi için filesize($f) komutu ile açmış olduğumuz dosyanın boyutunu öğrenebiliriz.

İşimiz bittikten sonra açmış olduğumuz dosyayı kapatmayı unutmayalım.

Dosyaya Yazma

Dosyaya veri yazmak için öncelikle dosyamızı yazılabilir şekilde açmamız gerekmektedir. Daha sonra dosyaya yazmak istediğimiz veriyi fwrite komutu ile dosyaya aktarabiliriz.

Kullanımı:

$f=fopen(“dosyayolu”,”w”); veya $f=fopen(“dosyayolu”,”a”)

fwrite($f,$veri);

fwrite komutu iki parametre alır; birinci parametre açılan dosya tutucusudur ($f), ikinci parametre ise dosyaya yazılacak olan veriyi içerir ($veri).

Burada dikkat edilmesi gerekn nokta, dosyayı açarken kullanacağımız açma türüdür. w türünde açılan dosyalara yeni bir veri yazıldığı zaman eski veriler silinecektir. a türünde açılan dosyalara yeni veri yazıldığında; yazılan yeni veri eski verinin sonuna eklenir.

İpucu: Log kayıtları gibi verileri dosyaya yazarken a (sonuna ekleme) türünde, Sayaç gibi yenilenen veriler kullanılacaksa w (üzerine yazma) türünde açmak aha faydalı olacaktır.

Dosyanın Varlığını Kontrol Etme, Okuma/Yazma İzinleri

Dosya okuma işlemi yapmadan önce dosyanın varlığını kontrol etmek, yapılması gereken en önemli işlerdendir. Bunun için; file_exists fonksiyonu kullanılır.

Kullanımı:

if(file_exists(“dosyayolu”))
echo “Dosya var”;
else
echo “Dosya bulunamadı”;

file_exists fonksiyonu sadece dosya yolunu parametre olarak alır. Eğer dosya var ise; Doğru (true), dosya yok veya ulaşılamaz ise Yanlış (false) değerini döndürür.

Dosyanın varlığı doğrulandıktan sonra, dosyanın okunabilir mi, yazılabilir mi olduğunu öğrenmemiz gerekiyor. Bunun için is_readable (okunabilir mi), is_writable (yazılabilir mi) fonksiyonları kullanılabilir.

is_readable: Dosya yetkileri kontrol edilerek, dosyayı okuma iznimiz olup olmadığı kontrol edilebilir. Eğer dosyayı okuma iznimiz var ise; Doğru (true), yoksa Yanlış (false) sonucu döndürülür.

is_writable: Dosya yetkileri kontrol edilerek, dosyaya yazma iznimiz olup olmadığı kontrol edilebilir. Eğer dosyaya yazma iznimiz var ise; Doğru (true), yoksa Yanlış (false) sonucu döndürülür.

Örnek:

$dosya=”deneme.txt”;
if(file_exists($dosya))   
    {
    if(is_writable($dosya))
        {
        $f=fopen($dosya,”a”);
        fwrite($f,”\nYeni Eklenen Veri”);
        fclose($f);
        echo “Veri dosyaya yazıldı”;
        }
    else if(is_readable($dosya))
        {
        $f=fopen($dosya,”r”);
        $v=fread($f,”1000″);
        fclose($f);
        echo “Dosyadan okunan veri: “.$v;
        }
    else
        echo “Dosyayı okuma/yazma iznimiz bulunmamaktadır.”;
    }

Dosya İçinde Gezinme

fseek komutu, fopen ile açılan bir dosya içerisinde bulunulan konumdan istenilen başka bir konuma gitmeyi sağlar. Dosyadan veri okunduktan sonra, işaretçi yerinin değiştirilmesi için kullanılır.

Kullanımı:

fread($f,2600);

fseek($f,2790); //2600. baytta yer alan işaretçinin 2790. bayta ilerlemesini sağlar.

fseek($f,0); //2790. baytta yer alan işaretçinin dosya başına konumlandırılmasını sağlar.

Dosya Kapatma

PHP’de bir dosya ile işlem yapabilmek için dosyayı açmamız gerektiğini söylemiştik. Dosyayı açma işlemi bu dosyayı diğer paylaşımcıların erişimine karşı kilitleyeceği için kullanımımız sona erdikten sonra dosyayı kapatmamız gerekmektedir. Bunun için fclose komutunu kullanmalıyız.

Kullanım:

$f=fopen(“dosyayolu”,”r”);
fclose($f);

Diğer Dosya İşlemleri

touch: Bir dosyanın son erişim zamanının ayarlanmasını sağlar. Olmayan bir dosyanın oluşturulmasını sağlar. bool touch($dosyayolu);

unlink: Dosya silme işlemi yapar. bool unlink($dosyayolu);

file_get_contents: Dosya içeriğinin tamamını bir dizgiye aktarmayı sağlar. $veri=file_get_content($f);

]]>
https://www.halilturkoglu.com.tr/wordpress/dosya-islemleri/feed/ 0
5-Fonksiyonlar https://www.halilturkoglu.com.tr/wordpress/fonksiyonlar/ https://www.halilturkoglu.com.tr/wordpress/fonksiyonlar/#respond Sat, 21 Jun 2014 10:54:48 +0000 http://www.halilturkoglu.com/wp/?p=359 Daha fazla oku

]]>
Fonksiyonlar; programlamada sürekli kullanılan komutların kaydedilip, daha sonra tekrar kullanılmasını sağlayan yapılardır. Küçük programcıklar olarak tanımlanabilirler. Kullandığımız hemen her komut bir fonksiyondur.

Bu yazımızda PHP programlama dilinde fonksiyon yazımı, fonksiyon çeşitleri ve kullanımını öğreneceğiz.

PHP kodlarınızı http://www.compileonline.com/execute_php_online.php adresinde deneyebilirsiniz.

Öncelikle fonksiyon çeşitleri ile işe başlayalım. Programlamada fonksiyonlar 3 kategoride incelenebilir:

  • Yaptığı işe göre fonksiyonlar
  • Parametre almasına göre fonksiyonlar
    • Parametre alan fonksiyonlar (Functions with arguments)
    • Parametre almayan fonksiyonlar (Functions without arguments)
  • Kendini tekrar eden fonksiyonlar (Recursive functions)
    Çalışması esnasında belirli koşullarda kendisini tekrar çağıran fonksiyonlardır.

Bir fonksiyon aynı anda birden fazla kategoriye dahil olabilmektedir.

Fonksiyonlar özette belirttiğimiz gibi, istenilen işlemlerin belirli bir isim altında kaydedilip, daha sonra kullanılmasına imkan tanıyan yapılardır.

Yapı:

function fonksiyon_adi([parametreler])
{
//yapilacak işlem(ler);
//return sonuc;
}

Hizmet Döndüren Fonksiyon

Bu tür fonksiyonlar verilen / önceden tanımlanan değerler üzerinde bazı işlemler yapıp, işlemler sürecinde bazı değişkenlerin değerlerini değiştirme, ekrana çıktı verme gibi işlemler yaparlar. Değer gönderme gibi bir durumları olmadığından değişkenlere atanamazlar.

Örnek 1:

function merhabadunya()
{
echo “Merhaba Dünya”;
}

Bu örnekteki fonksiyonumuz, Hizmet Döndüren, Parametre Almayan bir fonksiyondur (Function with no arguments and no return value).

Bir PHP sayfasında;

… önceki kodlar …
merhabadunya();
… sonraki kodlar …

şeklinde kullanılır.

Değer Döndüren Fonksiyon

Bu fonksiyonların amacı; verilen / daha önceden tanımlanan değerler ışığında bazı işlemleri gerçekleştirip, bu işlemlerin sonucunu başka bir değişkene göndermektir. ECHO deyimi ile birlikte ekrana çıktı almak için kullanılabileceği gibi, doğrudan bir değişkene değer olarak da atanabilir.

Örnek 2:

function topla($a,$b)
{
$c=$a+$b;
return $c;
}

Bu fonksiyonumuz da Değer Döndüren Parametre Alan bir fonksiyondur (Function with arguments and return value).

Bir PHP sayfasında;

… önceki kodlar …
echo topla(3,5);
… sonraki kodlar …

yada

… önceki kodlar …
$c=topla(3,5);
echo $c;
… sonraki kodlar …

şeklinde kullanılır.

Kendini Tekrarlayan Fonksiyon (Recursive Function)

Bu tip fonksiyonlar, programın özelliğine göre kendi kendini tekrar çağırarak bir nevi döngü oluşturan fonksiyonlardır. Faktöryel, Fibaonacci Saydırma, Asal Sayı Bulma, Bölme, Çarpma, Üs Alma bu türe örnek verilebilir.

Örnek 3:

function usal($sayi,$us)
{
if($us>=1) return $sayi*usal($sayi,$us-1);
else if($us<0) return “undefined”;
else return 1;
}

Bu örnekteki fonksiyonumuz, $sayi değerini, $us değeri bir azaltılmış fonksiyonun sonucu ile çarpıyor. Burada dikkat edilmesi gereken noktalardan bir tanesi IF yapılarıdır. Bu yapılar, fonksiyonun ne zaman ne yapacağını belirlemektedirler. İkinci nokta ise return deyimidir. Fonksiyon return deyimini çalıştırdığı anda sona erer. Bu nedenle return deyiminin nerede kullanılacağına dikkat edilmesi gerekmektedir.

else if($us<0) return “undefined”; satırında; $us değerinin 0’dan küçük olması durumunda tanımsız bir değer gönderiyoruz.

else return 1; satırında üssü 0 olan sayının değeri 1 olduğu için 1 değerini gönderiyoruz.

Fonksiyonun çalışmasını tabloda gösterecek olursak;

Fonksiyon Sayı Üs Return Açıklama
usal(3,3) 3 3 3*usal(3,2); //usal(3,2)=9 olduğunu alt satırda görüyoruz. Bu nedenle Return=27 olur.
usal(3,2) 3 2 3*usal(3,1); //usal(3,1)=3 olduğunu alt satırda görüyoruz. Bu nedenle Return=9 olur.
usal(3,1) 3 1 3*usal(3,0); //usal(3,0)=1 olduğunu alt satırda görüyoruz. Bu nedenle Return=3 olur.
usal(3,0) 3 0 1 //else return 1; satırından dolayı Return=1 olur.

Başka bir örnekle devam edelim:

Faktöryel: 1’den kendisine kadar olan sayıların çarpımına verilen addır. Ünlem (!) işareti ile tanımlanır.
3!=1*2*3=6
7!=1*2*3*4*5*6*7=5040
şeklindedir.

function faktoryel($sayi)
{
if($sayi<0) return false;
else if($sayi==0) return 1;

else return $sayi*faktoryel($sayi-1);
}

Bir sonraki örneğimiz, 50’den küçük Fibonacci sayılarını ekrana yazalım.

Fibonacci Sayıları: ilk iki sayısı 1 ve 1 olan, her sayının kendisinden önceki iki sayının toplamına eşit olduğu sayı dizisidir.
İlk 6 elemanı: 1, 1, 2, 3, 5, 8

$a=1;
$b=1;
$c=0;
while($a<50)
{
fibo();
}

function fibo()
{
global $a,$b,$c; //global deyimi fonksiyon dışındaki değişken üzerinde işlem yapabilme imkanı sağlar.
echo $a.”-“;
$c=$a+$b;
$a=$b;
$b=$c;
}

Bir sonraki örneğimiz, herhangi bir sayının Asal Olup Olmadığını belirleme.

Asal Sayı: Kendisi ve 1 dışında başka herhangi bir sayıya bölünemeyen sayılardır. Asal sayıyı belirlemek için farklı yaklaşımlar mevcuttur. Biz, sayıyı kendisinden küçük tüm sayılara bölerek kontrol edeceğiz.

function asalmi($sayi)
   {
   if($sayi<1) return false; //FALSE değeri, mantıksal yanlış anlamına gelir.
   else if($sayi==1) return true; //TRUE değeri, mantıksal doğru anlamına gelir. Bölen 1 ise
   else
    {
    //1 eksiğinden başlatıyoruz, çünkü kendisine kesinlike bölünür.
     for($i=$sayi-1;$i>1;$i–) //1’e bölmüyoruz, çünkü tüm sayılar 1’e bölünür.
       {
       if($sayi%$i==0) return false; //eğer bölünüyorsa ASAL DEĞİLdir.
       }
     return true; //eğer döngüden çıkabilmişse hiçbir sayıya bölünmemiş demektir, yani ASALdır.
   }
}
$sayi=13;
if(asalmi($sayi)) echo “$sayi sayısı ASALdır”;
else echo “$sayi sayısı ASAL DEĞİLdir”;

 

]]>
https://www.halilturkoglu.com.tr/wordpress/fonksiyonlar/feed/ 0
3-Karar Yapıları https://www.halilturkoglu.com.tr/wordpress/karar-yapilari/ https://www.halilturkoglu.com.tr/wordpress/karar-yapilari/#respond Wed, 18 Jun 2014 18:30:35 +0000 http://www.halilturkoglu.com/wp/?p=329 Daha fazla oku

]]>
Merhabalar,

Uzun bir aradan sonra PHP derslerimize devam ediyoruz. Bir önceki konumuz Değişkenler idi. Bu derste, Karar Yapılarını anlatmaya çalışacağım. Karar yapıları, program sürecinde, değişkenlerin değerlerini veya kullanıcı tarafından girilen verileri kontrol ederek, bunun sonucuna göre işlem yapabilmemizi sağlayan yapılardır.

PHP’de kullanılan karar yapıları:

  1. IF…ELSE
  2. SWITCH…CASE

yapılarıdır.

 

IF…ELSE

IF…ELSE yapısı Türkçe’de Eğer cümlesine tekabül etmektedir.

Kullanım Şekilleri:

  1. IF(koşul) yapılacak işlem;
  2. IF(koşul) {
    yapılacak işlemler;
    }
  3. IF(koşul) yapılacak işlem;
    ELSE yapılacak işlem;
  4. IF(koşul) {
    yapılacak işlemler;
    }
    ELSE IF(koşul2) {
    yapılacak işlemler;
    }
    ELSE {
    yapılacak işlemler;
    }

IF…ELSE yapısı yukarıda da görüldüğü gibi farklı şekillerde kullanılabilir. IF…ELSE yapısında kullanılan koşullar birbiri ile bağlantılı olmak zorunda değildir. Her bir IF cümleciğinde, farklı bir koşul kullanılarak birbirinden bağımsız durumları tek bir IF…ELSE yapısında birleştirmemiz mümkündür.

Örnek verecek olursak;

$sayi=12;
if($sayi>10) echo “sayınız 10 değerinden büyüktür”;

$sayi=12;
if($sayi>=10) echo “sayınız 10 değerinden büyüktür veya 10 değerine eşittir.”;
else if($sayi%2==1) echo “sayınız tek sayıdır.”;
else echo “seçtiğiniz sayı 10 değerinden küçük bir çift sayıdır.”;

SWITCH…CASE

SWITCH…CASE yapısı; IF…ELSE ‘in aksine sadece tek bir değişkenin farklı değerlere eşit olup olmadığını kontrol edebilmeyi sağlar.

SWITCH (DEĞİŞKEN)
{
case DEĞER1: Değişkenin değeri Değer1’e eşitse, yapılacak olan işlemler; break;
/*
break komutu yapılacak işlemlerin sonlandırılmasını sağlar. Sonlandırma işlemi yapılmazsa, diğer değerlerin doğruluğuna bakılmaksızın, break komutu bulunana kadar tüm işlemleri gerçekleştirir.
*/
case DEĞER2: Değişkenin değeri Değer2’ye eşitse, yapılacak olan işlemler; break;
default: Değişkenin değeri üstte belirtilmemişse, yapılacak olan işlemler;
/*
default bölümü için break komutu kullanılmaz.
*/
}

switch($yas)
{
case 7: echo “Okula başladınız.”; break;
case 18: echo “Artık bir yetişkinsiniz. Oy kullanabilirsiniz.”; break;
case 21: echo “Askerlik çağınız geldi.”; break;
case 25: echo “Milletvekili seçilme yaşına eriştiniz.”; break;
case 65: echo “Emeklilik yaşınız da gelmiş.”; break;
default: echo “Hiçbiri değilse bu komut çalıştırılır.”;
}

]]>
https://www.halilturkoglu.com.tr/wordpress/karar-yapilari/feed/ 0
2-Değişkenler https://www.halilturkoglu.com.tr/wordpress/degiskenler/ https://www.halilturkoglu.com.tr/wordpress/degiskenler/#respond Sat, 21 Sep 2013 15:20:41 +0000 http://www.halilturkoglu.com/wp/?p=269 Daha fazla oku

]]>
Merhaba,

Önceki dersimizde ilk php sayfamızı hazırlamış ve yayınlamıştık. Şimdi PHP’de değişken tanımlama, değişken türleri ve değişkenlere değer atama gibi konuları anlatacağız.

Öncelikle değişken ne demektir, onu bir öğrenelim. Değişkenler; program içerisinde farklı zamanlarda farklı değerlere sahip olabilen program ögeleridir. Bir bakıma Matematik’teki x gibidirler. Sorunun başında belirli bir değerleri yok iken, sonunda en değerli nesne olurlar :D.

PHP’de değişkenleri başlarına eklenen $ işaretinden tanıyacağız. Bir dizenin değişken olarak işlem görebilmesi için bazı kurallar var.

  1. Değişkenler $ işareti ile başlar,
  2. Değişken isimleri sadece harf, rakam ve alt çizgi karakterlerini barındırabilir.
  3. Değişken isimleri rakam ile başlayamaz.
  4. PHP’de değişken isimleri büyük / küçük harfe duyarlıdır. Bu nedenle değişken isimlerini seçerken buna dikkat etmek gerekir.

$ad, $soyad, $adres, $telefon_no1, $telefon_no2 isimleri değişken ismi olarak kullanılabilir, ama $1ad, $ad-soyad, $tc no, $123 gibi isimler değişken ismi olarak kullanılamaz.

 

Değişkenlere Değer Atama

Değişkenlerin değerleri eşittir işareti ile belirlenir. Değişkenlere değer ataması yapılırken, alfa sayısal içerikler tırnak işareti içerisinde yazılmalıdır. Sayısal değerleri yazarken tırnak işaretine ihtiyaç duymuyoruz.

$isim=”halil”; $yas=12;

Toplu değer atama için;

$ad=$isim=$name=”halil”;

kullanılabilir. Buradan şunu da anlıyoruz, bir değişkeni başka bir değişkene eşitleyebiliriz.

Sabitler

Sabitler, değişkenlerin bir türüdür. Fakat program boyunca genellikle değerleri hiç değiştirilmez. Ve yapı olarak da farklıdırlar. Sabitlerin başına $ işareti konmaz. Bu şekilde bir kural olmasa da, genel olarak uygulanan, sabitlerin tümünün büyük harfle yazılmasıdır.

Sabitlerin tanımlanması, define fonksiyonu ile yapılır ve tanımlama esnasında tırnak içerisinde yazılırlar.

define(“SITE_OWNER”,”TÜRKOĞLU”); şeklinde. Burada SITE_OWNER sabitine “TÜRKOĞLU” değerini atamış olduk.

Kullanımı: echo SITE_OWNER; şeklindedir.

 

Diziler

Diziler, değişkenlerin gelişmiş halleridir. Birden fazla değeri barındırabilirler. Dizilerin yapısı, değişkenlere ek olarak, bir index değeri içerir. Bu index değerini köşeli parantezler ile gösteririz.

$meyveler[1]=”Elma”; $meyveler[2]=”Armut”; şeklinde kullanılabilir.

Burada kullanılan index değeri, dizi içerisindeki belirli bir elemana ulaşmamızı sağlar. index değeri olarak sayı kullanılabildiği gibi metinler de kullanılabilir.

$personel[“ad”]=”Halil”; $personel[“soyad”]=”Türkoğlu”;

Dizilere tek tek değer ataması yapılabileceği gibi toplu değer ataması da yapılabilir. Bunun için array yapısının kullanılması gerekmektedir.

$meyveler=array(“Elma”,”Armut”,”Vişne”,”Çilek”); bu şekilde çok sayıda değer ekleyebiliriz.

array yöntemi ile diziye değer ataması yapılırken, aynı zamanda index de atamış oluruz. Yukarıdaki örneğin, tek tek atanmış hali:

$meyveler[0]=”Elma”;

$meyveler[1]=”Armut”;

$meyveler[2]=”Vişne”;

$meyveler[3]=”Çilek”; şeklindedir.

array yönteminde eğer herhangi bir başlangıç değeri belirtilmez ise; index değeri 0’dan başlar. Başlangıç index değeri tanımlamak için,

$meyveler=array(1=>”Elma”,”Armut”,”Çilek”,”Vişne”); şeklinde yazmamız gerekir. İsterseniz aynı yöntemle, her eleman için farklı bir index değeri verebilirsiniz.

Metin tabanlı index değerleri için de yukarıdaki yöntemi uygulamamız gerekiyor. Yalnız bu tür index değerlerinde her eleman ayrı ayrı belirtilmesi lazım.

$personel=array(“ad”=>”Halil”,”soyad”=>”Türkoğlu”); gibi.

Çok Boyutlu Diziler

Çok boyutlu diziler, elemanı dizi olan dizi değişkenlerdir. Her bir elemana ait, başka alt elemanlar çok boyutlu dizileri oluşturur.

Personel Listesi

  1. 1 numaralı personel
    • Adı=Halil
    • Soyadı=Türkoğlu
    • Personel No=123
  2. 2 numaralı personel
    • Adı=John
    • Soyadı=Doe
    • Personel No=0

Bu türdeki kademeli listeler çok boyutlu diziler ile ifade edilir.

$personel=array(

1=>array(“ad”=>”Halil”,”soyad”=>”Türkoğlu”,”persno”=>123),

2=>array(“ad”=>”John”,”soyad”=>”Doe”,”persno”=>0)

);

1 numaralı personelin adını ekrana yazdırmak için; echo $personel[1][“ad”]; kodu kullanılabilir.

Değişken Değişkenler

Değişken Değişkenler, ismi başka bir değişkenin değeri tarafından oluşturulan değişkenlerdir.

$isim=”halil”;

$$isim => $halil, bu şekilde otomatik üretilmiş değişken isimleri elde edilmiş olur.

Değişkeni Yok Etme

Değişkenleri ve değer atamayı gördükten sonra sıra geldi, onları yok etmeye. Bir değişken oluşturulduğu zaman, bellekte kendisine bir yer ayırır ve yok edilinceye kadar o yeri korur. Bu nedenle gereksiz değişken kullanımı, belleğin aşırı yüklenmesine sebep olabilir. Bunu önlemek için, artık kullanılmayacak olan değişkenleri yok edebiliriz.

unset($isim); 

unset fonksiyonu, belirtilen değişkeni ortadan kaldırma ve ona ayrılan konumu boşaltma işlemini yapar. Kullanılmayan değişkenlerden bu komut ile kurtulabiliriz.

Evet, bu dersimizin de sonuna gelmiş olduk. Bu derste; değişken ne demektir, değişken türleri nelerdir, değişkenlere nasıl değer atanır sorularına cevaplar verdik. Bir sonraki dersimizde görüşmek üzere…

]]>
https://www.halilturkoglu.com.tr/wordpress/degiskenler/feed/ 0
1-PHP Nedir? https://www.halilturkoglu.com.tr/wordpress/php-nedir/ https://www.halilturkoglu.com.tr/wordpress/php-nedir/#respond Fri, 20 Sep 2013 11:36:40 +0000 http://www.halilturkoglu.com/wp/?p=257 Daha fazla oku

]]>
PHP Nedir?

PHP, Personal Home Page (Kişisel Anasayfa) kelimelerinin kısaltılmışıdır. HTML, içerisine gömülebilen sunucu taraflı betik ve programlama dilidir. Kullanımı oldukça kolaydır.

C programlama dilini temel alarak geliştirilen PHP, diğer Web Programlama dillerine kıyasla daha hızlı çalışabilmektedir. Özgür Yazılım Lisansı ile yayınlanan PHP’nin kullanımı için lisans gerekmediğinden, daha ucuz ve halk tarafından geliştirildiği için daha güvenli bir sistemdir.

Bilgisayarınıza PHP, Apache ve MySQL Kurulumu

PHP, tek başına çalışabilen bir sistem değildir. Linux tabanlı bir Web Sunucusu olan Apache üzerine eklenti olarak kurulur. Yani, bilgisayarınızda PHP kullanmak istiyorsanız, öncelikle Apache Web Sunucusunu kurmanız gerekiyor.

Burada şu soru akla gelebilir. PHP’yi ayrı, Apache’yi ayrı, MySQL’i ayrı mı kuracağız? Hayır. Bunların tümünü içerisinde barındıran kurulum paketlerini kullanabilirsiniz.

gibi kurulumlar ile bilgisayarınıza hem PHP’yi, hem Apache’yi hem de MySQL’i ve en çok kullanılan veritabanı yönetim yazılımı olan phpMyAdmin’i kurmuş olursunuz.

AppServ kurulumu ile devam edelim.

AppServ’ü indirdikten sonra kurulum aşamasında size bazı sorular soracaktır. Bu soruları kısaca özetleyecek olursak;

  • Kurulum Klasörü
    Bu bölüm, Apache, ve PHP’nin kurulacağı yeri belirlediğimiz bölümdür. Eğer sizin için bir sakıncası yoksa, bu bölümde herhangi bir değişklik yapmıyoruz. (Resim 1)
  • Kurulacak Programlar
    Bu bölümde bilgisayarımıza kurulmasını istediğimiz programları seçiyoruz (Resim 2). Bu programlar,

    • Apache: Bilgisayarınızı sunucu olarak çalıştıracak olan yazılım
    • PHP: Apache için PHP eklentisi
    • MySQL: Veritabanı yazılımı
    • phpMyAdmin: Web tabanlı veritabanı yönetim yazılımı
  • Sunucu Adı
    Genellikle localhost (Yerel Sunucu) olarak ayarlanır, bu sayede yerel makinenizin adı, herhangi bir web sitesi ile de karışmamış olur. (Resim 3)
  • Admin E-posta Adresi
    Burada yazacağınız e-posta adresi, sistem yöneticisi olarak kaydedilir. Normalde bu adres, sistemde bir arıza/sorun olması durumunda ulaşılacak kişinin adresi olsa da sizin kurduğunuz sistem, sadece sizin bilgisayarınızda çalışacağı için burayı boş bırakmamak adına admin@localhost olarak ayarlıyoruz. (Resim 3)
  • MySQL şifresi
    Bu seçenek veritabanı bağlantılarında kullanılacak şifreyi ayarladığımız bölümdür. Buraya genellikle unutulmayacak/basit şifreler verilir. Biz de bu nedenle şifre olarak 12345 veriyoruz. (Resim 4)

Kurulum işlemi tamamlandıktan sonra (eğer kurulum konumunda herhangi bir değişklik yapmadı iseniz) C:\AppServ\www klasörü içerisinde web sayfamızın dosyalarını görebilirsiniz. Hazırlayacağımız dosyaları/web sitesini bu klasörde depolayacağız.

appserv_1_selectlocation appserv_2_select_prgs appserv_3_servername appserv_4_dbpass

İlk PHP Dosyamız

Evet sıra geldi, ilk dosyamızı hazırlamaya. Ama önce bazı temel bilgileri görelim.

PHP, HTML içerisine gömülebilen bir betik dili idi. O zaman HTML ve PHP kodlarını nasıl ayırt edeceğiz. Cevap basit. PHP kodları sayfa içerisinde <?PHP ve ?> işaretleri (etkiketleri) arasında yer alır. <?PHP etiketi bu noktadan itibaren PHP kodlarının başladığını Apache’ye bildirir. Ve Apache ona göre işlem yapmaya başlar.

O zaman neymiş. PHP kodlaması yaparken, <?PHP etiketini unutmuyoruz.

PHP’de herhangi bir içeriği HTML’ye yansıtmak için echo komutunu kullanırız. Bu komut yazdır anlamına gelir. Echo’dan sonra gelecek içerik, eğer değişken veya bir işlem değil ise, tırnak/tek tırnak içerisinde yazılır.

Örnek: echo “Merhaba Dünya”;

Burada dikkat etmemiz gereken bir diğer önemli hususta, her komutun sonunda noktalı virgül (;) kullanmaktır. Noktalı virgül kullanılmadığı zaman program ne yapacağını bilemeyeceği için hata verecektir.

O zaman ilk php dosyamızı hazırlayalım.

Not Defterini açıyoruz.

İçerisine;

<?PHP

echo “Selam Gençlik”;

?>

yazıyoruz.

Dosyamızı Farklı Kaydet seçeneği ile C:\Appserv\www konumuna kaydediyoruz. Dosyamızın adı ilkdosyam.php olacak. Yalnız dosya adını yazarken tırnak içerisinde yazmamız gerekiyor, aksi takdirde Not Defteri bunu anlamayıp, düz metin belgesi olarka kaydedebilir.

Şimdi hazırladığımız sayfayı görelim. sayfamızın adresi http://localhost/ilkdosyam.php.

Bundan sonra sahip olduğunuz HTML bilgileri ile dosyanızı zenginleştirebilirsiniz. Tek yapmanız gereken PHP kodu kullanacağınız yerlerde <?PHP … ?> etkiketlerini unutmamak ve dosyanızı .php uzantısı ile kaydetmek.

Bir sonraki derste görüşmek üzere…

 

]]>
https://www.halilturkoglu.com.tr/wordpress/php-nedir/feed/ 0
PHP Dersleri https://www.halilturkoglu.com.tr/wordpress/php-dersleri/ https://www.halilturkoglu.com.tr/wordpress/php-dersleri/#respond Fri, 20 Sep 2013 10:42:29 +0000 http://www.halilturkoglu.com/wp/?p=252 PHP Dersleri

Merhaba arkadaşlar,

Bugünden itibaren bu başlık altında PHP dersleri yayınlamaya başlayacağız. PHP’nin kullanımına ilişkin bilgileri buradan sizlerle paylaşacağız. Ders anlatımlarımızı örneklerle destekleyeceğiz. İşleyeceğimiz konuların temel planı aşağıdaki gibi olacak. Daha sonraki aşamalarda bu dersleri PDF ortamında kitap haline getirebiliriz.

  1. PHP Nedir?
    1. Bilgisayara PHP, Apache ve MySQL kurulumu
    2. İlk PHP dosyamız
    3. PHP ile Matematiksel İşlemler
    4. Eşittir, Denktir, Eşit Değildir, Büyüktür, Küçüktür İşleçleri
  2. Değişkenler
    1. Değişken Tanımları
    2. Sabitler
    3. Dizi Değişkenler
    4. Çok Boyutlu Diziler
    5. Değişken Değişkenler
    6. Değişkeni Yok Etme
  3. Karar Mekanizmaları
    1. IF yapısı
    2. SWITCH Yapısı
  4. Döngüler
    1. FOR Döngüsü
    2. WHILE Döngüsü
    3. DO…WHILE Döngüsü
    4. FOREACH Döngüsü
  5. Fonksiyonlar
    1. Değer Döndüren Fonksiyonlar
    2. Hizmet Döndüren Fonksiyonlar
    3. Özyinelemeli (Recursive) Fonksiyonlar
  6. Dosya İşlemleri
  7. Veri tabanı İşlemleri
  8. Sınıf (Class) Yapıları
  9. Oturum İşlemleri
  10. PHP’de Özel İşlemler
    1. Metin İşlemleri
    2. Tarih/Saat İşlemleri
]]>
https://www.halilturkoglu.com.tr/wordpress/php-dersleri/feed/ 0
Bir Kod Hikayesi https://www.halilturkoglu.com.tr/wordpress/bir-kod-hikayesi/ https://www.halilturkoglu.com.tr/wordpress/bir-kod-hikayesi/#respond Thu, 26 Nov 2009 18:46:03 +0000 http://ateshkushu.net/wp/?p=32

Bir zamanlar Kodlar Diyarı adında bir yerde geçiyor hikâyemiz. Kodlar Diyarı, çok anlayışlı ve iyi kalpli bir dil olan Makine Dili’nin yönetimindeydi. Makine Dili’nin tek amacı insanlara hizmet etmekti. Çok basit bir yapıda olan Makine Dili sadece 0 ve 1’den oluşuyordu. Ama insanlar onu anlamakta ve kullanmakta zorlanıyorlardı. Bu Makine Dili’ni çok üzüyordu. O da buna bir çözüm bulmak için çalışmaya başladı. Ve bir gün kullanımı kendisinden daha kolay olan Assembly’yi üretti. İnsanlar Assembly’yi çok sevmişlerdi. Onunla istedikleri her şeyi yapabiliyorlardı.

Ama bu yine de Makine Dili’ni memnun etmeye yetmedi. Çünkü Assembly’de insanlar için çok zor bir dildi. Yapısı insanların anlayabileceği sadelikte değildi. Ve Makine Dili, Assembly ile birlikte daha basit ve anlaşılır bir dil üretmeye çalıştılar. Ve ortaya 3 farklı dil çıktı. Bunlara C, Basic ve Pascal isimlerini verdiler. Temelde bu 3 dilde aynı işi yapıyor olmasına rağmen bunlarında eksiklikleri vardı. Çünkü Makine Dili istiyordu ki insanlar hiç uğraşmadan istedikleri her şeyi yapabilsinler. Onun tek amacıydı bu. Ve Assembly, C, Basic ve Pascal’ı da bu şekilde eğitmişti.

Ama artık yorulmuştu, daha fazla çalışamıyor, yeni diller üretemiyordu. Ürettikleri ise bu 4 dil kadar etkili olamıyordu. Onun için Assembly, C, Basic ve Pascal ‘dan yeni diller üretmelerini ve insanlara kolaylıklar sağlamalarını istedi.

Bunun üzerine çalışmaya başladılar. Ancak birlikte çalışamıyor, ortak bir dil geliştiremiyorlardı. Çünkü yapıları birbirinden farklıydı. Ama hemfikir oldukları bir nokta vardı, İnsanların en kolay kullanacakları dil görsel bir dil olabilirdi.

Bu ortak kararın ardından Assembly kendisinin görsel bir dil yazamayacağını ama kendilerine yardım edebileceğini söyledi.

Ve 3 dilimiz farklı görsel diller üzerinde çalışmaya başladılar. İlk görsel dili yazan C oldu ve bu dile C++ adını verdi. Ama bu dil C‘nin istediği gibi tamamen görsel bir dil değildi ve kullanımı hala zordu. Bu yüzden C çalışmalarına devam etti.

Kısa bir süre sonra C, Basic ve Pascal kendi görsel dillerini yazmışlardı. C Builder, Visual Basic ve Delphi.

İnsanlar bu dilleri kullanarak çok güzel programlar yazmaya başladılar. Ve sonunda interneti de keşfettiler. İnterneti yönetmesi için HTML dilini gönderdiler Kodlar Diyarına.

C, çok kısa zamanda HTML ile arkadaş oldu ve ona yardım etmesi için JavaScript dilini yazdı. Basic bunu görünce bunun insanlar için çok iyi olacağını düşündü ve C ile birlikte bir internet programlama dili yazmak istedi. Ama yine farklı olan yapıları nedeniyle birlikte çalışamıyorlardı.

Bunun üzerine farklı diller yazmaya karar verdiler, böylece insanlar istedikleri dili kullanabilecekler, seçim şansları olacaktı. Ve çalışmaya başladılar. HTML’de onlara yardımcı oluyor, yol gösteriyordu. C, önce Perl/CGI adını verdiği bir dil geliştirdi. Perl hem internet için hem de programlama amaçlı kullanılabiliyordu. Basic de ASP’ yi üretmişti. Gerçekten çok kullanılışlı bir dildi ASP.  Ama C daha iyisini yapmak istiyordu. Perl’ i de yanına alarak, çalışmalara başladı ve sonunda ASP’ den daha hızlı ve kullanışlı olan PHP’ yi üretti. Ama bu da onlar için yeterli değildi. İnsanların işlerini kolaylaştırmak için JavaScript, ASP, PHP ve HTML kafa kafaya verip HTML’ ye benzeyen XML’ yi ve daha sonra AJAX’ ı ürettiler.

Bu arada C ve Basic beraber çalışmanın bir yolunu bulmuşlardı ve hemen çalışmaya başladılar. Sonunda. NET’ i doğdu. Yazımı ve yapısı biraz karmaşık olmasına rağmen çok kullanışlı bir programlama diliydi .NET.

Sonunda insanlar içn en uygun olan dilleri ve yardımcılarını üretmeyi başarmışlardı. O günden sonra C, Basic ve Pascal  Assembly ve Makine Dilinin yanına yerleşip Kodlar Diyarının nasıl büyüdüğünü ve geliştiğini seyretmeye başladılar.

Halil İbrahim TÜRKOĞLU
Eğitici Bilişim Teknolojileri Formatörü

SON

]]>
https://www.halilturkoglu.com.tr/wordpress/bir-kod-hikayesi/feed/ 0
Yardım Belgeleri https://www.halilturkoglu.com.tr/wordpress/yardim-belgeleri/ https://www.halilturkoglu.com.tr/wordpress/yardim-belgeleri/#respond Mon, 16 Nov 2009 07:33:51 +0000 http://ateshkushu.net/wp/?p=26 İnternet-Hukuku

İnternet-Nedir

Microsoft-Excel

Microsoft-Word-2007

PHP-El-Kitabı

PHP Yardım Belgesi

]]>
https://www.halilturkoglu.com.tr/wordpress/yardim-belgeleri/feed/ 0