Banner

Etiket Arşivi: ‘php fonksiyonlar örnekleri’

Faydalı PHP fonksiyonları

PHP çalışmalarında kullanabileceğin işe yarar ve alternatif fonksiyonlarla tanışmaya hazır mısın?

İçerikleri detaylı yönetmek, tarih saat yazdırmak, bir PHP dosyasına farklı dosyalar dahil etmek, rastgele rakamlar üretmek ve daha bir çok alanda işlemler yapmamızı sağlayan birbirinden acayip, işe yarar fonksiyonlar mevcut ve hepsi senin onları keşfetmeni bekliyor!

Şimdi ben sana bu keşif yolculuğunda biraz yardımcı olup bazılarını yazacağım. Hadi başlıyalım.

Str_replace fonksiyonu ile istediğin terimleri değiştir

Bir metinin içindeki istediğin terimleri istediğin terimler ile değiştirmene yarayan bu fonksiyon ile bir çok düzeltme ve sansürleme gibi işlemleri rahatlıkla yapabilirisin.

str_replace fonksiyonu 3 parametre ile çalışır, ilk parametreye bulunacak değeri, ikinci parametreye bulanan değerin ne ile değiştirileceğini, son parametreye ise değişikliliğin yapılacağı metini ya da metinin olduğu değişkeni yazarız.

1
2
3
$metin = 'Bugün hava çok soğuk';
$sonuc = str_replace('soğuk', 'sıcak', $metin);
echo $sonuc;

Ekranda Bugün hava çok sıcak yazar. Metin değişkeninde soğuk metnini sıcak ile değiştir.

Bu fonksiyon ile bir güzel örnek daha verelim. Bir dizi, bir foreach döngüsü ve str_replace fonksiyonu ile kelime vurgulaması yapalım:

1
2
3
4
5
6
7
8
$kelimeler = array('php', 'Musa', 'örnek');
$metin = 'Merhaba ben Musa. Bu da php için örnek bir çalışma.';
foreach($kelimeler as $kelime) {
   $metin = str_replace($kelime, '<b>' . $kelime . '</b>', $metin);
}
echo $metin;

Ekran çıktısı:
Merhaba ben Musa. Bu da php için örnek bir çalışma.

Oluşturduğumuz $kelimeler dizisinin içerisine yazdığımız kelimeleri metin içinde <b>…</b> etiketleri arasına alarak kalın yaptık ve vurgulamış olduk. Metnimiz ne olursa olsun diziye yazacağımız kelimeleri seçip vurgulayacaktır.

Explode fonksiyonu ile metinleri böl

Diyelim uzun bir metinin içinden yanlızca ilk cümleyi almak istiyoruz, bunu nasıl yaparız? En basit açıklaması ve yolu; metnin başından ilk noktaya kadar olan kısmını alarak.

Explode fonksiyonu ile bir metni istediğimiz karakterden parçalara ayırabiliyoruz. Mesela boşluktan ayır diyerek metin içindeki tüm kelimelere tek tek ulaşabiliriz.

Explode fonksiyonu parçalara böldüğü metinlerin sonucu dizi haline getirir ve her bir parçayı bir eleman yapar.

2 parametre ile çalışır, ilk parametresine bölünecek karakter, ikinci paramteresi ise parçalara ayrılacak olan metin ya da metnin buldunduğu değişken yazılır.

1
2
3
4
$metin = 'Bu birinci cümle. Bu ise ikinci cümle';
$cumle = explode('.', $metin);
echo $cumle[0];

Ekranda Bu birinci cümle yazar. Bunun sebebi explode fonksiyonunu ile noktadan bölüp oluşan sonucun ilk elemanını almış olamamız. Dizi elemanları sayısal olarak 0 dan başlar bu nedenle ilk parçamız dizinin 0 anahtarlı elemanı oluyor.

İkinci cümleyi yazdırmak isteseydik echo $cumle[1]; dememiz gerekirdi.

Rand fonksiyonu ile rastgele sayılar üret

Eğlenceli fonksiyonlardan birisi. 2 parametre ile çalışan bu fonksiyon ile yazdığın aralıkta rastgele sayılar üretebiliyorsun.

Karmaşık şeyler yaparken, şifreler üretirken ya da kararsız kaldığın yerlerde bir rakam sallamak istediğin zaman kullanabilirsin.

1
2
$sayi = rand(0, 100);
echo $sayi;

Ekranda her çalışmasında 0 ile 100 arasında rastgele bir sayı yazar. Sadece bu fonksiyon ve bir kaç ifade ile bir zar atma oyunu yapabilirsin.

PHP dosyalarına başka PHP dosyaları yükle

Bir PHP çalışmanı içerisinde gerçekleştireceğin işlemlere göre parçalara ayırıp sonrasında istediğin bir PHP dosyasında birleştirebilirsin.

Mesela sitenin üst kısmı ile alt kısmı hep aynıdır, ama orta kısım yani içeriklerin yer aldığı kısım her sayfada farklılık gösterir. Üst ve alt aynı olduğu halde 5-6 tane farklı içerik sayfasında aynı şeyleritekrar tekrar yazmak yerine ya da üst kısımda değişiklilik yapacağımız zaman tüm her yerdeki üst kısımları değiştirmek yerine ust.php ve alt.php adında PHP dosyaları oluşturup diğer tüm sayfalarda bu üst ve alt kısmı çağırarak acayip bir kolaylık sağlamış oluruz.

Nasıl yapacağımızı söylemeyi unuttum sanırım. Bu işi yapmanın bir çok yolu yordamı var.

Eğer çağıracağın dosya çok önemli ve olmazsa olmaz ise require fonksiyonunu kullanman gerekir. Require kullandığında eğer bir sorun çıkarsa PHP ölümcül hata verir, fakat çok önemli bir sayfa dahil etmeyecek isen include fonksiyonunu kullanabilirsin. Include ifadesi ile çağırdığında bir hata meydana geldiğinde ölümcül hata değil yanlızca uyarı verir.

ust.php oluşturalım ve içine şunları yazalım:

1
2
3
<?php
    echo 'Burası üst kısım!<br/>';
?>

Ve bir de sayfa.php yapalım;

1
2
3
4
<?php
   include 'ust.php'; // ust.php yi bu sayfaya dahil ettik
   echo 'Burasıda sayfanın içeriği';
?>

sayfa.php’ye girdiğimizde ekranda çıkacak olanlar:

Burası üst kısım!
Burasıda sayfanın içeriği

Ayrıca bu şekilde yaptığımız yükleme işlemlerinde diğer PHP dosyasında tanımladığımız tüm değişken, fonksiyon vs. olduğu gibi diğer sayfayada gönderilmiş olur. Yani aynen kopyalayıp yapıştırmış gibi diğer kodlarda çalışır.

Tarih ve saat yazdırma

PHP ile bugünün tarihini saatini bulup ekrana yansıtmanız gayet basittir. Hatta istediğiniz formatı seçip beğenip o şekilde yazdırabilirsin. İstersen 1 saat öncesi ya da sonrası gibi tarihleride ekrana yazdırabilirsin.

Tarih ve saat formatını belirleyecek kodların tablosuna bu adresten ulaşabilirsin. Ben burada kabaca ve en sık kullanılan gün.ay.yıl saat:dakika:saniye cinsini göstereceğim sadece.

Diğer formatları incelemek için şuradaki tabloyı inceleyebilirsin.

1
echo 'Tarih: ' . date('d.m.Y H:i:s');

Ekranda Tarih: 12.06.2010 01:02:03 şeklinde şu anki tarih yazar ve her sayfa yenilenmesinde güncellenir. Mesela sadece günü yazdırmak için echo date(‘d’); dememiz yeterlidir. Ya da sadece saati yazdırmak için echo date(‘H:i:s’);

Eğer ilerki ya da gerideki tarihleri yazdırmak için ise 2. parametresi kullanılır:

1
echo date('d.m.Y H:i:s', time() + (60*60*24));

Sonuna eklediğimiz time() + (60*60*24) şu anki zamana + 60*60*24 saniye yani +1 gün demek oluyor. Bu nedenle ekranda benim şu anki zamanıma göre 1 gün sonraki tarihi yazar.

Eval ile PHP kodu çalıştır

Konu başlığı burada biraz saçma oldu, ama demek istediğim bir değişkene atadığın PHP kodu değerini çalıştırmak.

Bu fonksiyon bayağı bir tehlikeli, sakın olaki $_GET gibi dışarıdan alacağımız verilerle direkt olarak kullanılmasını sağlama. Aksi takdirde dışarıdan isteyen herkes sitene senin gibi kodlar yazıp çizebilir.

1
2
$kod = 'echo "Selam Düya!";';
eval($kod);

$kod değişkenindeki kodu çalıştırır ve ekrana Selam Dünya! yazar.

Exit ile PHP kodlarını durdur

PHP’de bir sorun farkettiğinde ya da giriş yapmamış kullancıları belirlediğinde koduna ekleyeceğin bir exit fonksiyonu ile tüm kodları olduğu yere çivileyip ilerlemesini engelleyebilirsin.

Kodlarının bir hata algıladığında exit diyerek hatadan sonra daha fazla çalışmamasını sağlayabilirsin.

1
2
3
echo 'Bu yazıdan sonra kodlar duracak';
exit;
echo 'Kodlar durduğu için bu yazı yazılmayacak.';

Ekranda yanlızca Bu yazıdan sonra kodlar duracak yazar.

Aynı şekilde die fonksiyonu kullanarakta yapabilirsin. Fazladan içine scripti öldürmeden önce söylemek istediğin son sözü yazabilirsin:

1
2
die('Elveda');
echo 'Burası asla yazılmayacak';

Ekranda sadece Elveda yazar.

Adını andığımız bu güzel ve işe yarar fonksiyonları PHP programlama hayatın boyunca hatasız kullanman dileğiyle.
Bir sonraki PHP serüvenlerinde görüşmek üzere esen kalın!

Kaynak : https://www.phpr.org/faydali-php-fonksiyonlari/

Kategori Php
22.08.2016
675 Okunma

PHP fonksiyon kullanımı ve örnekleri

Başlangıç seviyesinin son dersi olan fonksiyonlar bir şeyler inşa etmeye başlamamız için öğrenmemiz gereken en harika derslerden birisi. Teorik olarak matematik dersinde gördüğümüz fonksiyonlar gibidir.

Oluşturduğumuz bir değişken ve içine yazdığımız kodları istediğimiz yerde tanımladığımız fonksiyonun adıyla çalıştırıp tekrar tekrar kullanabiliyoruz.

Gerek çalışmalarımızda çok sık tekrar edeceğimiz kodları bir yerde paket haline getirip bir fonksiyon adıyla çağırmak için, gerekse işe yarar kodları belli başlıklar altında derleyip düzenli çalışmalar yapmak için göz bebeğimiz olan fonksiyonları öğrenmeye hazır olun.

PHP fonksiyon kullanımı

PHP’nin kendi içinde yüzlerce fonksiyonu vardır. Diğer derslerde gördüğümüz isset(), empty(),unset() gibi. Fonksiyon oluşturmak ve kullanmak gayet basit, ama basit olduğu gibi derin konuları da var.

İlk önce nasıl bir fonksiyon oluşturacağımızı gösterelim:

function selam_ver() {
echo 'Selam!';
}

Yukarıda selam_ver() adında bir fonksiyon oluşturduk. Bu şekilde bir kodu çalıştırsak ekrana bir çıktı vermez. Çünkü şuan sadece bir fonksiyon tanımladık, içine yazılan kodların çalışması için o fonksiyonu çağırmamız gerekiyor.

Hemen bu fonksiyonun altına selam_ver(); yazacak olursak eğer, işte o zaman ekranda Selam!yazar.

Hemen başka bir örnek daha verelim:

1
2
3
4
5
6
7
function rakamlar() {
   for($sayi = 0; $sayi<10; $sayi++) {
      echo $sayi;
   }
}
rakamlar(); // oluşturduğumuz fonksiyonu çağıralım

Ekranda 0123456789 yazacaktır.

Fonksiyonlara parametre ekleme

Yukarıdaki örnekte yaptığımız fonksiyonlar dışarıdan veri almadan, her seferinde çağrıldıklarında aynı şeyi çalıştıracak olan fonksiyonlardı. Ama şimdi bu fonksiyonlara bir kaç parametre eklettirerek farklı kullanımlara kapılarını açabiliriz.

Hemen parametreli bir fonksiyon yapalım:

1
2
3
4
5
6
function topla($sayi1, $sayi2) {
   $sonuc = $sayi1 + $sayi2;
   echo $sonuc;
}
topla(5, 10);

Şimdi topla adında bir fonksiyon oluşturduk ve buna 2 adet parametre ekledik. $sayi1 ve $sayi2parametreleri bizim o fonksiyonu kullanırken yazacağım değerlerin yükleyeceği değişkenlerin adı.

Biz topla(5, 10) dediğimizde fonksiyon içinde $sayi1 değişkeninin değeri 5, $sayi2 değişkeninin değeri ise 10 olacak. Ve ekranda da 15 yazacaktır.

Parametreli fonksiyona bir başka örnek daha verelim:

1
2
3
4
5
6
7
8
9
10
11
function bolunur_mu($bu, $buna) {
   $kalan = $bu % $buna;
   if($kalan == 0) {
      echo $bu . ' sayısı ' . $buna . ' sayısına bölünür!';
   } else {
      echo $bu . ' sayısı ' . $buna . ' sayısına bölünmez! (kalan: '.$kalan.')';
   }
}
bolunur_mu(10, 2);
bolunur_mu(25, 10);

İki rakamın birbirine bölünüp bölünmediğini kontrol eden bir fonksiyon yaptık. Ve bu fonksiyonu 2 farklı değerde kullanıp çağırdık. Bu çalışmanın sonunda ekranda yazacak olanlar:

10 sayısı 2 sayısına bölünür!
25 sayısı 10 sayısına bölünmez! (kalan: 5)

Parametrelere varsayılan değer verme

Parametreli bir fonksiyon yaptığımızda sorunsuz çalışabilmesi için tüm parametrelerin girilmesi gerekir. Mesela yukarıda verdiğimiz topla fonksiyonunu topla(1); şeklinde çalışmaya kalktığımızda PHP hata verecektir.

Çünkü fonksiyonu 2 tane parametre ile çalışmak üzere tasarladık. Ama bu durumlara bir istisna sağlayarak parametrelerimize varsayılan değer atayıp, parametresiz de çalışmalarını sağlayabiliriz.
Şimdi varsayılan parametreli bir fonksiyon yapalım:

1
2
3
4
5
6
function hosgeldin($isim = 'Misafir') {
   echo 'Hoşgeldin ' . $isim . '! ';
}
hosgeldin();
hosgeldin('Musa');

Örnekte hosgeldin() fonksiyonunu ilk olarak parametresiz, ikinci olarak da parametreli çalıştırdık. Bu durumda fonksiyonun parametresini tanımladığımız yerde hosgeldin($isim = ‘misafir’) şeklinde parametreye varsayılan değer atadığımız için boş bıraktığımızda o parametreye bu değeri verecektir. Yani ekranın çıktısı aşağıdaki gibi olacaktır:

Hoşgeldin Misafir!
Hoşgeldin Musa!

Return ifadesi ile sonucu atama

Yukarıda yaptığımız tüm örneklerde fonksiyon sonuçları echo ile ekrana yazdırdık. Peki ya biz fonksiyonlardan elde ettiğimiz sonuçları ekrana yazdırmak değilde bir değişkene atayıp kullanmak istiyorsak? İşte o zaman return ifadesini kullanacağız.

Return ifadesi ile fonksiyon içinde elde ettiğimiz sonucu dışarıya aktarırız. Hemen bir örnek ile hayata geçirelim:

1
2
3
4
5
6
7
function topla($sayi1, $sayi2) {
   $sonuc = $sayi1 + $sayi2;
   return $sonuc;
}
$hesap = topla(10, 20);
echo 'Fonksiyon ile toplama yaptık ve sonuç: ' . $hesap;

İşte yukarıdaki örnekte gördüğün gibi bu sefer aynı topla() fonksiyonu ile echo yerine returnyazdık. Bu da fonksiyonun sonucunu ona eşitlediğimiz bir değişkene atadı. Yani fonksiyon toplamayı yaptı ve sonucu $hesap değişkenine aktardı sonra biz onu echo ile ekrana yazdırdık.

Fonksiyonlarda global ifadesi kullanımı ve örneği

Fonksiyonların içerisinde tanımladığın değişkenler dışarıya gönderilmez ve aynı şekilde dışarıda tanımladığın bir değişken fonksiyon içinde görülmez. Yani fonksiyonlara kendi içinde bir dünya diyebilirsin. Hemen örnek ile kafanda canlandıralım:

1
2
3
4
5
6
function deneme() {
   $isim = 'Musa';
}
deneme();
echo $isim;

Bu kodu çalıştırdığımızda PHP yalnızca isim adında bir değişken olmadığı için hata verir. Biz $isimdeğişkenini fonksiyon içinde tanımladık ve yalnızca orada kullanabiliriz. Dışarıya aktarmak için return ifadesini kullanıyoruz.

Eğer fonksiyon içine dışarıdan bir değişkeni sokmak istiyorsak, yani global bir değişkeni çağırmak istiyorsak global ifadesini kullanırız.

1
2
3
4
5
6
7
8
$isim = 'Musa';
function selam() {
   global $isim; // Dışarıda tanımlanmış bir değişkeni fonksiyon içine çağırdık
   echo 'Selam ' . $isim;
}
selam();

Ekranda Selam Musa yazar. Global ifadesini kullanarak fonksiyon dışında yazdığımız bir değişkeni çağırdık ve ekrana yazdırdık.
Return ifadesi kullanılmadan fonksiyon içindeki bir değişkeni veya çıktıyı dışarı aktaramayız. Globalifadesi kullanılmadan da dışarıda kullanılan bir değişkeni fonksiyon içine aktaramayız.

Fonksiyonlarda referans ile değer atama

Return ifadesini kullanarak değer atama yaparken fonksiyonun başında bir değişkeni ona atamak için (=) eşittir operatörünü kullanırız. Peki dikkatini çekti mi bilmiyorum ama dizilerde sıralama yapan fonksiyonları (sort(), rsort()) bu şekilde kullanmıyorduk.

Sadece fonksiyonu çalıştırarak dışarıdan parametreye gönderilen değişkenin değerini referanslar ile değiştirebiliriz.

Referans uygulamak istediğimiz değişkenin başına (&) operatörünü koyarız. Bu operatörü yerleştirdiğimiz parametreler, dışarıdan verilecek olan değişkenlerle beraber değişirler.

1
2
3
4
5
6
7
function topla(&$sayi) {
   $sayi = $sayi + 10;
}
$x = 10;
topla($x);
echo $x;

Ekranda 20 yazar. Topla fonksiyonunun parametresinde kullandığımız referans nedeniyle o parametreye yüklenen değişkenin değeri fonksiyon içinde değiştirmemizle değişecek. Burada da fonksiyon içinde o parametreye +10 eklediğimiz için dışarıdaki değişkeninde değeri 10 artmış oldu.

Faydalı bir kaç PHP fonksiyonu öğrenmek için bir sonraki yazımı okumayı unutma.
Başka bir PHP serüveninde görüşmek üzere hoşçakalın.

Kaynak : https://www.phpr.org/php-fonksiyon-kullanimi-ve-ornekleri/

Kategori Php
22.08.2016
607 Okunma