Fonksiyon Hazırlamak

PHP 2 yorum »

PHP içerisinde birçok fonksiyon barındırır. Bu fonksiyonların bir kısmı kendiliğinden gelir, bir kısmı ise php.ini dosyasından belirteceğiniz modüllerle kullanılabilir hale gelir. Örneğin strtolower() fonksiyonu her php dosyasının çalıştırabileceği bir fonksiyon iken imagecreatefromjpeg() fonksiyonu yalnız php_gd2.dll kütüphanesinin dahili ile çalıştırılabilir.

Ayrıca php kodlaması yapan kişi yani programcı da kendine özgü fonksiyonlar yazabilir. Bunun için php dosyamızın içerisinde fonksiyon kodlarına yer verebileceğimiz gibi include() ya da require() ile fonksiyonların bulunduğu bir dosyadan da veri çekebiliriz.

1
2
3
4
5
<?php
function YeniFonksiyon( $degisken ) {
   // işlemler buraya gelecek
}
?>

Burada fonksiyon adından sonra gelen parantezle belirttiğimiz değişkenler olmasa da olur. Fakat her durumda parantez açılır ve kapanır YeniFonksiyon() şeklinde. Eğer bir değişken için varsayılan bir değer belirtmek istersek bunu == operatörü ile yaparız:

1
2
3
4
5
<?php
function HaritadaGoster( $nereyi, $neresi == 'Merkez' ) {
   // işlemler buraya gelecek
}
?>

Yukarıdaki kodda görüldüğü üzere fonksiyonda ilk değişkeni kullanmak zorunludur, fakat ikinci değişken olan $neresi kullanılmasa da olur. Bu durumda ‘Merkez’ adını alacaktır. Bu değişkenler her durumda fonksiyon içinde kullanılacaktır. Değişkenlerin aralarına virgül (,) koymayı unutmamak gerek.

Fonksiyon içerisindeki her değişken, genel değişkenlerden bağımsız hareket etmektedir. Yani eğer fonksiyon dışındaki php belgemizde $degisken kullanıldıysa ve değer içeriyorsa, fonksiyon içinde bu değişken işlev görmez ve undefined (tanımsız) olarak görülür. Bunu engelleyip genel değişkeni fonksiyona dahil etmek için global komutunu kullanırız.

1
2
3
4
5
6
<?php
function Kucult() {
   global $genel;
   return strtolower( $genel );
}
?>

Her fonksiyon return (veri); şeklinde geri döner. Buradan dönen veri mantıksal (true, false), alfasayısal, sayısal ya da dize değer taşıyabilir.

Şimdi öğrendiklerimizi uygulayacağımız bir php fonksiyonu yazalım. Örneğin yazacağımız fonksiyon bir cümlede geçen her kelimenin baş harfini büyütsün ve bize versin.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$degisken = 'büyük tavşan küçük fareyi görünce çok sevindi.';
echo BasHarfBuyut( $degisken );
 
function BasHarfBuyut( $kelime )
{
   $kelimeler = explode( " ", $kelime );
   $yeni_kelime = '';
   for ( $i = 0; $i < count( $kelimeler ); $i++ ) {
      $kelimeler[$i] = strtoupper( $kelimeler[$i][0] ) . substr( $kelimeler[$i], 1, strlen( $kelimeler[$i] ) - 1 );
      $yeni_kelime .= $kelimeler[$i] . ' ';
   }
   return trim( $yeni_kelime );
}
?>

Bu örnekte fonksiyonun görevi öncelikle tüm boşluk ( ) işaretlerine bakarak yeni bir dize oluşturmak ve böylece kelimeleri ayırmak. Daha sonraki işlem kelimelerin ilk harfini ayrı ayrı büyütmek ve son olarak işlenmiş halini göndermek.

Bir sonraki konuda görüşmek dileklerimizle…


str_replace() Kullanımı

PHP 6 yorum »

Bu komut PHP dilinde, bir değişken ya da yazılan bir metindeki istediğimiz değişiklikleri yapmamızı sağlar. Nasıl kullanıldığı hakkında bir fikir vermesi açısından değişkenleri ile birlikte bu php komutunu tanıyalım.

$degisken = str_replace( 'degisecek', 'yerine konulacak', 'metin' );

Buradaki değişken, metnin tüm değişiklikler yapılmış halini içerecektir. Metin bir değişkenden oluşabilir. Daha iyi anlamak için aşağıdaki örneği inceleyin:

$degisken = 'Bu site html dili ile yazıldı.'
$degismis = str_replace( 'html dili', '<b>html dili</b>', $degisken );

Böylece metindeki “html dili” yazan yeri kalın olarak gösterdik. Değişecek ve yerine konulacak bölümlerinde dize değeri kullanabilirsiniz. Bunu şu şekilde örnekleyelim:

$metin = 'Bu site html ile yazıldı, php ve asp ile yazılmadı.';
$bul = array('html', 'php', 'asp');
$degistir = array('html dili', 'php dili', 'asp dili');
$degistirilmis = str_replace( $bul, $degistir, $metin );

‘degistirilmis’ adlı değişkeni ekrana yazdırdığımızda metnin “Bu site html dili ile yazıldı, php dili ve asp dili ile yazılmadı.” olarak değiştirildiğini göreceğiz. Unutmadan söyleyelim burada yapılan değişiklikler büyük-küçük harf fark etmektedir. Buna strtolower() ya da strtoupper() ile engel olabilirsiniz..


Wordpress'in katkılarıyla hazırlandı ve ndesign teması kullanıldı.
Venus © 2008
Konular RSS Yorumlar RSS Giriş