Zihin Geliştirme Merkezi

KOOLPA

Zihin Geliştirme Merkezi

 

Php Dersleri

 Programlama Katagorisinde ve  Asp,Perl,Php,Html Forumunda Bulunan  Php Dersleri Konusunu Görüntülemektesiniz.=>Windows'da Apache! NT sisteminizde ISS değil de Apache for Win 32 Web Server programını çalıştırıyorsanız, sürümüne göre httpd.conf veya srm.conf ...


Geri git   Zihin Geliştirme Merkezi > KooLpa Webmaster / Grafik / Programlama > Programlama > Asp,Perl,Php,Html

Üye ol Bloglar Yardım Üye Listesi Ajanda Forumları Okundu Kabul Et

Cevapla

 

LinkBack Seçenekler Stil
Alt 03-12-2006, 22:59   #11 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Windows'da Apache!


Windows'da Apache!

NT sisteminizde ISS değil de Apache for Win 32 Web Server programını çalıştırıyorsanız, sürümüne göre httpd.conf veya srm.conf dosyasına şu ekleri yapmanız gerekir:

ScriptAlias /PHP3/"c:/path-to-PHP-dir/"

AddType application/x-httpd-PHP3 .PHP3

Action application/x-httpd-PHP3"/PHP3/PHP.exe"
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 22:59   #12 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Windows'da MySQL


Windows'da MySQL

PHP, Windows ortamında, Windows'un ODBC sürücülerini kullanarak, sürücüsü bulunan bütün veritabanlarına ulaşabilir. Ancak Windows ortamında geliştirseniz bile, Web sitenizi, Unix tabanlı ve ODBC-uyumlu olmayan bir sunucuya gönderebilirsiniz. Bu durumda sayfalarınızda kullanacağınız verileri muhtemelen MySQL aracılığıyla veritabanından çekeceksiniz demektir. Bu yüzden Windows sisteminize MySQL kurmak ve veritabanlarını bu araçla geliştirmeniz yerinde olur. Unix/Linux ortamında ücretsiz olmakla birlikte MySQL, Windows için bedeli paylaşımlı (shareware) olarak edinilebilir. Benioku dosyasında belirtildiğine göre, programı eğitim amacıyla ve 30 günü aşmamak kaydıyla kullanıyorsanız, ücret ödenmesi gerekmiyor. Diğer durumlarda TCX firmasının Internet'te http://www.tcx.se adresindeki sitesindeki formları doldurarak lisans alınması gerekiyor. Bu programı, MySQL'in http://www.mysql.com/downloads/ adresinden edinebilirsiniz. Bu adresteki mysql-shareware-3.22.34-win.zip dosyasını alarak, bir geçici dizinde açın. (Sisteminiz gerçek Internet sunucusu olarak ticarî amaçlı hizmet sağlayacaksa şu dosyayı almanız gerekir: http://www.mysql.com/Downloads/MySQL...21-win-src.zip) Shareware sürümünü içeren dosyayı açtığınızda ortaya çıkacak setup.exe programı MySQL'i kuracaktır.

MySQL Server'ın Windows'da da tıpkı Linux'ta olduğu gibi çalıştırılması ve durdurulması gerekir. MySQL'in paylaşım sürümünü kullanmak için Windows sistemlerinde mysqld-shareware.exe programını çalıştırmanız gerekir. DOS komut istemcisini açın ve "C:/mysql/bin" dizinine giderek, sırasıyla şu komutları verin:

mysqld-shareware

mysqlshow

mysqlshow -u root mysql

mysqladmin version status proc

Şimdi MySQL server çalışıyor ve biraz sonra PHP yoluyla kişisel Web Server'ınıza hizmet vermeye hazır demektir. Bu komutları icra ettiğiniz sırada bir hata mesajı ile karaşılaşırsanız, MySQL'in kuruluşunda hata yapmış olabilirsiniz. DOS ekrarında test ve MySQLl veri tabanlarının varlığını ve hizmete girdiğini gösteren mesajlar görürseniz, MySQL güzelce çalışıyor demektir. Bunu bir de Browser ile ve PHP yoluyla sınayalım:

Yukarıda IIS'e PHP desteği kazandırma çalışmaları sırasında oluşturmadı iseniz, düz yazı programınızda şu tek satırı yazın; php.php adıyla, kişisel Web'inizin kök dizinine kaydedin:

<? PHPinfo(); ?>

Browser'ınızı açın; URL hanesine örneğin http://localhost/PHP.PHP3 yazın. Açılacak sayfada iki şeye dikkat edin: MySQL ve ODBC bölümleri var mı? MySQL bölümü varsa; kendinizi yeniden kutlayın! ODBC bölümü yoksa, muhtemelen sisteminizde Microsoft'un Open Database Connectivity (Açık Veribanı Bağlantısı) sürücüleri kurulu değil demektir. (Windows'da Denetim Masası'nda ODBC simgesini görmüyorsanız, MS'un sitesinden gerekli kur programını indirmeniz gerekebilir. Linux'ta ise MyODBC programı ile bu imkanı kazanabilirsiniz.)
Bir kere daha tekrar etmek gerekirse, PHP ile veritabanına dayanan sayfalar yapmak için mutlaka ve sadece MySQL sürücülerini kullanmak gerekmez. Bunun yerine MS'un ODBC sürücülerini kullanabilirsiniz. Ancak Web sitenize evsahipliği yapan firmanın size ODBC desteği verip vermediğini öğrenmeniz gerekir. Aslında aynı şekilde, evsahibi firmanın MySQL desteği verip vermediğini de öğrenmek zorundasınız. (PHP ile MS-ODBC sürücülerini kullanabilmek için Andrew Stopford'un ASPToday sitesindeki http://www.asptoday.com/articles/20000202.htm yazısında geniş bilgi bulabilirsiniz.)

Geçmiş olsun. Bana sorarsanız, PHP ile dolu yeni bir hayata başlamak için en önemli adımı attınız. Bundan sonrası, sadece PHP dilini öğrenmekten ibaret. Dilin üretecilerinden Zeev Suraski, bu yılın başında İsrail'de yapılan ilk uluslararası PHP Konferansı'nda "PHP öğrenmek zor mu?" diye soran bir bilgisayar meraklısına şu cevabı veriyordu: "Bir haftadan fazla zaman ayırmanız gerekiyorsa, sizin için zor demektir!"
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:00   #13 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart PHP'nin Yapı Taşları


PHP'nin Yapı Taşları

PHP, bir programlama dili olarak, değişkenler, değişkenlerin değerleriyle bir işlem yapmayı sağlayan işlemciler, işlemcilerle oluşturulan deyimler ve nihayet bunların tümünü toplu olarak kullanmamızı sağlayan işlevlere (fonksiyonlara) sahiptir. PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkanına ve bunların kullanılmasını sağlayan metodlara da sahiptir. Bütün bu imkanları kullanarak, PHP ile bir veritabanından veri alarak, bunları HTML etiketlerinin değerleri olarak kullanabiliriz; Web sitemizi ziyaret eden kişilerden bilgi alabiliriz, bu bilgilerle işlemler yapabiliriz. PHP'nin çeşitli komutlarını, deyimlerini ve fonksiyonlarını kullanarak, programımızın çalıştığı Web sunucusunun bulunduğu bilgisayara da çeşitli dosya işlemleri yaptırabiliriz.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:01   #14 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart PHP programını durdurmak


PHP programını durdurmak

Şimdi belki PHP'yi durdurmayı hiç düşünmüyorsunuz; ama ilerde bir fonksiyonun vereceği sonucun bütün programın durdurulmasını gerektiği zamanlar olabilir. PHP'nin resmî el kitabına bile ilk baskısında konulması unutulmuş olan programı durdurma komutu, exit kelimesidir; hiç bir parametre almadan çalışır.
Bu tür karmaşık uygulamalara geçebilmek için önce, PHP dilinin unsurlarını biraz yakından inceleyelim.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:01   #15 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Değişkenler


Değişkenler

Programcılıkta işlemlerimizi değişkenlerle yaparız. Değişkeni bir kap gibi düşünebilirsiniz. Sözgelimi "Gün," değişkenin adı ise bu değişkenin değeri Pazar, Pazartesi, Salı, vd., olabilir. Her değişken, türüne göre, ya bir ya da daha fazla değer tutar. Adından da anlaşılacağı gibi değişkenin değeri değişir! Bu değişikliği biz yapabiliriz; programın kendisi yapabilir.

PHP'de de, bir çok başka bilgisayar programlama dilinde olduğu gibi değişkenlerin içine bir değer konmadan önce tanımlanması mümkündür; fakat gerekli değildir. Değişkenleri adının önüne $ işareti koyarak tanımlarız:

$adi;

$soyadi;

$123;

$sevdigiRenk;

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ğişkenleri her türlü değişken tutabilirler: bir değişkenin adının yazılış şekli onun tutabileceği değerin niteliğini belirlemez. Dolayısıyla, "$adi" değişkenin değeri "Reşit" da olabilir, "1255" de olabilir.

PHP'de genellikle değişkenleri değerini atayarak belirleriz:

$adi = "Reşit";

$soyadi = "Gülen";

$123 = 123;

$sevdigiRenk = "yeşil";

Değişkenler, kullanıldıkları işleme, taşıdıkları değeri verirler:

print $adi;

komutu, eğer değeri "Reşit" ise "Browser penceresine "Reşit" kelimesini yazdırır.

PHP'de özel bir değişkene değişken adı olarak kullanılacak değerleri de atayabiliriz:

$adi = "Reşit";

$degisken = "adi";

print $$degisken;

Burada Browser penceresine yine "Reşit" kelimesi yazılacaktır; çünkü PHP $degisken adlı değişkenin "adi" adlı değişkeni tuttuğunu bilecek ve iki Dolar işaretini görünce, $degisken'in değerini değil, onun tuttuğu değişkenin değerini yazacaktır. Bu, size şu anda karışık görünebilir. Daha sonra döngüleri gördüğümüzde bu tekniği bir satırlık kod ile yüzlerce değeri yazdırmakta kullanacağız. Bu teknik şöyle de kullanılabilir:

$degisken = "adi";

$$degisken = "Reşit";

print "$adi";

print $$degisken;

print "${$degisken}";

print "${'adi'}";

Buradaki dört "print" komutu da Browser'a "Reşit" kelimesini yazdıracaktır.

PHP'de bir değişkenin tuttuğu değer, bir başka değişkene atanabilir. Bu ya duragan, ya da dinamik olarak yapılır. Duragan yöntemde:

$birinci_degisken = "Nurcan";

$ikinci_degisken = $birinci_degisken;

$birinci_degisken = "Tülay";

print $ikinci_degisken;

Buradaki "print" komutu Browser penceresine "Reşit" kelimesini yazdıracaktır. İki değişken arasındaki değer alış-verişi birinci değişkenin tuttuğu değeri değiştirmeden önce olduğu için, ikinci değişken birinci değişkenin ilk değerini almış oldu. Fakat kimi zaman iki değişken arasındaki değer alış-verişi sürekli (dinamik) olsun isteriz. PHP, buna, ilk atama sırasında & işareti kullanırsak izin verir:

$birinci_degisken = "Nurcan";

$ikinci_degisken = &$birinci_degisken;

$birinci_degisken = "Tülay";

print $ikinci_degisken;

Buradaki "print" komutu ise Browser penceresine "Tülay" kelimesini yazdıracaktır. Çünkü iki değişken arasındaki değer alış-verişi birinci değişkenin tuttuğu değeri değiştirmeden önce halde, ikinci değişkene birinci değişkenin değerini dinamik olarak atamış olduk. Atama işlemi sırasında & işareti kullandığımız için, birinci değişkenin değeri değiştiğinde ikinci değişkenin de değeri değişecektir.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:02   #16 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Veri Türleri


Veri Türleri

PHP, değişkenlere, tuttukları değere göre farklı bellek alanı tahsis eder; bu bakımdan verilerimizin türü etkin bir programcılık açısından önem taşır. Ayrıca PHP, diğer bütün programlama dilleri gibi belirli veri türleri ile belirli işlemleri yapar veya yapamaz. Örneğin, ancak iki sayı arasında aritmedik toplama yapılabilir. İki metin tutan değişken aritmetik olarak toplanamaz; ancak içerdikleri değerler ardarda eklenebilir. Ne var ki, PHP sizin aritmetik toplama mı, yoksa ardarda ekleme mi yapmak istediğinizi bilmek durumunda değildir. (PHP'ye 'muazzam dil' dedik; içinde yapay zekâ var demedik!) Dolayısyla değerleri 5 ile 6 olan iki değişkeni topladığınız zaman ortaya 11 yerine 56 çıkarsa, kabahati PHP'de değil, değişkenlere veri atayan kişide (büyük bir ihtimalle kendinizde) aramalısınız.

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): "Reşit" gibi

Mantıksal (Boolean): doğru (true)/yanlış (false) gibi

Nesne (Object)

Dizi (Array)

Bazı uzmanlara göre, gerçekte PHP'de mantıksal (boolean) değişken türü yoktur. B kanının sebebi, PHP'nin true (doğru) ya da false (yanlış) olarak atadığımız değerleri 1 ve boş/null değerlere çevirmesi, mantıksal olarak sorgulandığında 0 dışındaki tam ve ondalık değişkenleri TRUE, 0'ı FALSE sayması, ve boş alfanümerik değişkenleri FALSE, dolu alfanümerik değişkenleri ise TRUE olarak değerlendirmesidir. Ancak daha sonra gereceğimiz gibi PHP, Mantıksal/Boolean adında bir değişken değiştirme fonksiyonuna sahiptir ve bu tür değişkenlerin türü sorulduğunda "boolean" karşılığını verir.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:02   #17 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Tür Değiştirme


Tür Değiştirme

Değişkenlere atadığımız değerlerinin türlerini genellikle biliriz; ama yüzlerce değişkenle uğraştığımız bir Web programında değişken türünü unutmak çok kolaydır. Kimi zaman da değişkenlere program yoluyla değer atarız; başka bir deyişle programımız bazı değişkenleri kendisi oluşturabilir, ve bunlara kendisi değer atayabilir. Bu tür program yoluyla atanan değerlerin de türünde kuşkuya kapıldığımız anlar olabilir. Bir değişkenin değerinin türü hakkında kuşkunuz varsa, en emin yol bunu PHP'nin kendisine sormaktır. Bu sorgulamayı gettype() fonksiyonu ile yaparız.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:02   #18 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Fonksiyon


Fonksiyon

PHP'nin gettype() ve print() gibi, kendi içinde bulunan kullanılmaya hazır bir çok fonksiyonu vardır. Daha sonra kendi fonksiyonlarımızı yazmanın yollarını da göreceğiz. Programcılık dilinde ister dile ait olsun, ister kendimiz yazmış olalım, bir fonksiyonu kullanmaya "fonksiyon çağırma" denir. Fonksiyonlar da fonksiyon çağırabilirler. Çağrılan bir fonksiyon ya kendisinden beklenen işi yapar, ya da kendisini çağıran işleme veya fonksiyonu bir değer sunar. Buna fonksiyondan dönen değer denir.
Şimdi, bir PHP programı yazalım, bir takım değişkenlere değerler atayalım ve bunların türlerini PHP'ye soralım. Bir düzyazı programı ile şu metni yazın ve turler.php adıyla kaydedin:

<HTML>

<HEAD>

<TITLE>PHP'de Degisken Turleri</TITLE>

****** **********="content-type" *********"text/html; charset=ISO-8859-9">

****** **********="Content-Type" *********"text/html; charset=windows-1254">

</HEAD>

<BODY>

<B>

<H2>

<?php

$sayi = 5;

print("Birinci değişkenin adı: \$sayi<br>");

print("Değeri : ");

print "$sayi<br>";

print("Türü : ");

print gettype( $sayi ) ; //tamsayi/integer

print "<br>";

print "<br>";

$alfanumerik = "Reşit";

print "İkinci değişkenin adı: \$alfanumerik<br>";

print "Değeri : ";

print "$alfanumerik<br>";

print("Türü : ");

print gettype( $alfanumerik ) ; //alfanümerik/string

print "<br>";

print "<br>";

$ondalik = 5.1234;

print "Üçüncü değişkenin adı: \$ondalik<br>";

print "Değeri : ";

print "$ondalik<br>";

print("Türü : ");

print gettype( $ondalik ) ; //çift,ondalık/double

print "<br>";

print "<br>";

$mantiksal = true;

print "Üçüncü değişkenin adı: \$mantiksal<br>";

print "Değeri : ";

print "$mantiksal<br>";

print("Türü : ");

print gettype( $mantiksal ) ; //mantıksal/boolean

print "<br>";

print "<br>";

?>

</H2>

</B>

</BODY>

</HTML>

Bu programı çalıştığımızda karşımıza şöyle bir görüntünün gelmesi gerekir:
Burada mantıksal (boolean) değer olarak doğru anlamına true değeri atadığımız halde, PHP'nin bu değişkenin değeri olarak 1'i gösterdiğine dikkat edin. PHP'de bir fonksiyon, elde ettiği değer doğru ise sonuç olarak 1 değerini verir. (Yanlış/false değerinin neye çevrildiğini bulabilir misiniz?)
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:04   #19 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Escape


Escape

turler.php dosyasını yazdıysanız, şu satırdaki, ters-bölü işareti dikkatinizden kaçmamış olmalı:

print "İkinci değişkenin adı: \$alfanumerik<br>";

Daha önce gördük ki, tek veya çift tırnak içine de alsak, PHP, bir değişken adını gördüğü zaman onun yerine o değişkenin tuttuğu değeri yazar. PHP bunu, değişken adının başındaki $ görerek yaparak. $ işareti gibi PHP için özel anlamı olan işaretlerin anlamlandırılmasını önlemek ve bu işaretleri düz metin saymasını sağlamak için bu işaretlerin önüne ters-bölü işareti koyarız. Buna o karakteri kurtarma veya ESCaping denir. PHP'nin anlamlı işaretleri ve bunların ESCape-yazılışı şöyledir:

\' Tek tırnak

\" Çift tırnak

\\ Ters-bölü

\$ Dolar işareti

\n Yeni Satır (New Line)

\r Satır Başı (Return)

\t Sekme (Tab) karakteri

Kimi zaman bir değişkene atadığımız değerin türünü değiştirmek gerekir. Bunu settype() fonksiyonu ile yaparız. Elimizde böyle bir imkan var diye, bir değişkenin alfanümerik (String) olan değerini sayıya çevirebileceğini sanmayın. PHP buna çok kızar! Şu örneği de tur_degistir.php adıyla kaydedelim:

<HTML>

<HEAD>

<TITLE>PHP'de Degisken Turleri</TITLE>

****** **********="content-type" *********"text/html; charset=ISO-8859-9">

****** **********="Content-Type" *********"text/html; charset=windows-1254">

</HEAD>

<BODY>

<B>

<H2>

<?php

$degisken = 5.67890;

print("Değişkenin değeri : ");

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; //çift,ondalık/double

print "<br>";

print "<br>";

print "İlk değiştirme işlemi: Alfanümerik/String:<br>";

settype( $degisken, string ); //alfanümerik/string

print "Değeri : ";

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; //alfanümerik/string

print "<br>";

print "<br>";

print "İkinci değiştirme işlemi: Tamsayı/Integer:<br>";

settype( $degisken, integer ); //Tamsayı/Integer

print "Değeri : ";

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; //Tamsayı/Integer

print "<br>";

print "<br>";

print "Üçüncü değiştirme işlemi: Ondalık/Double:<br>";

settype( $degisken, double ); //çift,ondalık/double

print "Değeri : ";

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; //çift,ondalık/double

print "<br>";

print "<br>";

print "Dördüncü değiştirme işlemi: Mantıksal/Boolean:<br>";

settype( $degisken, boolean ); // Mantıksal/Boolean

print "Değeri : ";

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; // Mantıksal/Boolean

print "<br>";

print "<br>";

?>

</H2>

</B>

</BODY>

</HTML>

Bu programı çalıştırdığımızda, ilk atadığımız değerin ondalık/double olarak belirlendiğine dikkat edin. Bu değerin türünü alfanümerik/string olarak değiştirdiğimizde değişmediğini görüyoruz. Fakat tamsayı/integer'a çevirdiğimizde PHP değerin tamsayı bölümünü alıyor; ondalık-kesir bölümünü atıyor. Nitekim daha sonra değişkerin türünü yeniden ondalık yaptığımız halde, atılan bu bölüm geri gelmiyor. Son olarak değişkeni mantıksal ifade olarak değiştirdiğimizde, değerin doğru/true olduğunu anlıyoruz; değer olarak bize 1 dönüyor. PHP, sıfır dışındaki tüm değerleri doğru/true'ya çevirir; sıfır'ı ise yanlış/false olarak atar ve boş/null değer verir.
Şu anda PHP'yi tam bilemediğimiz için nerede kullanılır kestiremiyoruz, ama diyelim ki burada olduğu gibi, değişkeni bir daha düzelmeyecek şekilde değişikliğe uğratmak istemeyebiliriz; fakat yine de değerinin türünü değiştirmek isteyebiliriz. Bunu da nerede kullanabiliriz, şu anda bilmiyoruz. Ama diyelim ki, böyle bir işlem yapmaya ihtiyacımız oldu! Hatırlıyor musunuz, biraz önce özel bir şekilde bir değişkene başka bir değişkenin adını değer olarak vererek, aslında bu değişkenin ilk değişkenin değerini almasını sağlamıştık. Burada da aynı tekniği kullanabiliriz. Bu kodu da tur_kopyala.php adıyla kaydedin:

<HTML>

<HEAD>

<TITLE>PHP'de Degisken Turleri Kopyalama (Casting)</TITLE>

****** **********="content-type" *********"text/html; charset=ISO-8859-9">

****** **********="Content-Type" *********"text/html; charset=windows-1254">

</HEAD>

<BODY>

<B>

<H2>

<?php

$degisken = 3.1418;

print("Değişkenin değeri : ");

print "$degisken<br>";

print("Türü : ");

print gettype( $degisken ) ; //çift,ondalık/double

print "<br>";

print "<br>";

print "İlk kopyalama işlemi: Alfanümerik/String:<br>";

$kopya_degisken = ( string ) $degisken; //alfanümerik/string

print "Değeri : ";

print "$kopya_degisken<br>";

print("Türü : ");

print gettype( $kopya_degisken ) ; //alfanümerik/string

print "<br>";

print "<br>";

print "İkinci kopyalama işlemi: Tamsayı/Integer:<br>";

$kopya_degisken = ( integer ) $degisken; //Tamsayı/Integer

print "Değeri : ";

print "$kopya_degisken<br>";

print("Türü : ");

print gettype( $kopya_degisken ) ; //Tamsayı/Integer

print "<br>";

print "<br>";

print "Üçüncü değiştirme işlemi: Ondalık/Double:<br>";

$kopya_degisken = ( double ) $degisken; //çift,ondalık/double

print "Değeri : ";

print "$kopya_degisken<br>";

print("Türü : ");

print gettype( $kopya_degisken ) ; //çift,ondalık/double

print "<br>";

print "<br>";

print "Dördüncü kopyalama işlemi: Mantıksal/Boolean:<br>";

$kopya_degisken = ( boolean ) $degisken; // Mantıksal/Boolean

print "Değeri : ";

print "$kopya_degisken<br>";

print("Türü : ");

print gettype( $kopya_degisken ) ; // Mantıksal/Boolean

print "<br>";

print "<br>";

?>

</H2>

</B>

</BODY>

</HTML>

Bu programın can alıcı noktası örneğin "$kopya_degisken = ( boolean ) $degisken;" şeklindeki komut; burada $kopya_degisken adlı değişkene $degisken adlı değişkenin değerini (eşittir işareti ile) kazandırırken, arada yeni değişkenin kazanmasını istediğimiz türün adını parantez içinde yazıyoruz. Burada gerçekte, $degisken adlı değişkenin değerine hiç bir şey olmuyor. Bu programı çalıştırırsanız, ilk değerin ontalık kısmının önceki örnekte olduğu gibi değişim işlemi sonunda tamamen yok olmadığını görebilirsiniz.
$degisken adlı değişkenin değeri değişmeden durduğu için üçüncü adımda yıptığımız ondalık tür olarak kopyalama sonucu yeni değişkenin değeri yine kesiri ile karşımıza çıkıyor.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Alt 03-12-2006, 23:05   #20 (permalink)
efe
Genel Yayın Yönetmeni
 
efe - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2006
Nerden: Renkli Rüyalar Oteli
Mesajlar: 3,050
Blog Başlıkları: 11
Tecrübe Puanı: 10 efe isimli üye Tecrübe puanını kapatmıştır.
Standart Dört yararlı fonksiyon


Dört yararlı fonksiyon

PHP'de değişken değer türü değiştirmekte kullanabileceğimiz kullanılmaya hazır fonksiyon vardır. ilerde döngüleri ele aldığımızda daha çok anlam kazanacak olan bu değişkenleri şimdilik bir kenara kaydedin:

isset() ve unset()

PHP, bir değişken tanımlandığı anda, sanki içinde değer varmış gibi, bilgisayarın belleğinde yer ayırır. Bu bazen bilgisayarın kıt kaynaklarını zorlayabilir. isset() fnksiyonu, PHP'nin bir değişkenin içinde değer bulunup bulunmadığını sınamasını sağlar. unset() ise varolan bir değişkeni yok eder. Bu iki fonksiyonu birlikte kullanabiliriz ve boş değişkenleri yok ederek, bilgisayarın belliğinde yer açabiliriz:

if (isset($bir_degisken)) {

print( $bir_degisken );

}

else {

unset($bir_degisken);

}

Bu kod parçası, $bir_degisken isimli dğişkenin içi boş değişse, içeriğini görüntüleyecek, içi boş ise varlığına son verecektir.

empty()

isset() fonksiyonun tersi işleve sahiptir; bir değişkene değer atanmamışsa, veya 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.

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.

<?php

$a = 6.567;

if (is_double($a)) {

print ("A Double'dır<br>");

}

$b = "Reşit";

if (is_double($a)) {

print ("B String'dir<br>");

}

$c = 6;

if (is_int($c)) {

print ("C Integer'dır<br>");

}

?>

Bu kod, Browser penceresine "A double'dır, B String'dir, C Integer'dır" yazdıracaktır. PHP'de bu fonksiyonlara benzeyen fakat başka tür değer arayan şu fonksiyonlar da vardır: is_array(), is_object.

intval(), doubleval(), doubleval()

Bir değişkenin değerinin türünü başka bir türe çevirmeye yararlar. intval(), ortaya çıkartacağı tamsayı değişkenin 10 tabanlı (decimal) veya 16 tabanlı (hexadecimal) olmasını sağlayan ikinci bir argüman alabilir:

<?php

$a = "123ABC";

$b = inval($a, 16)

print ($b);

?>

Bu program Browser penceresine, 123'ün hexadecimal ifadesi olan "1194666" yazdıracaktır.
efe isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usStumble this Post!Reddit!Google Bookmark this Post!Live Bookmark this Post!Propeller this post!
Alıntı ile Cevapla
Cevapla


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)

 
Seçenekler
Stil

Yetkileriniz
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML KodlarıKapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular

Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Diksiyon Dersleri Crystal Heart Komik Yazılar 0 22-03-2008 01:12
Office Dersleri 1.0 KöTü KeDi ŞeRaFeTTiN Geri Dönüşüm Kutusu 2 05-03-2008 15:38
FireWorks Dersleri [MasterSlawe] Webmaster Genel 4 02-02-2008 21:39
fotg. dersleri rockand Fotoğrafçılık 1 05-01-2008 23:40
Türkçe asp dersleri gca Asp,Perl,Php,Html 5 03-05-2007 20:51


Bütün Zaman Ayarları WEZ +3 olarak düzenlenmiştir. Şu Anki Saat: 04:15 .


Powered by vBulletin® Version 3.7.5
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

Gizlilik Politikası | KooLpa üyeleri onay gerektirmeksizin mesaj yazabilmektedir. KooLpa' da yasalara aykırı unsurlar bulursanız buraya yazınız. En kısa zamanda gereği yapılacaktır.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139