Yerleşik işlevler

PHP standart olarak birçok işlev ve oluşum ile birlikte gelmektedir. Bunun yanında, özel PHP eklentilerinin derlenmesini gerektiren, aksi takdirde "tanımsız işlev" hatası üreten işlevler de mevcuttur. Örneğin, imagecreatetruecolor() gibi görüntü işlevlerini kullanabilmek için, PHP'yi GD desteğiyle derlemiş olmanız gerekir. Ya da, mysqli_connect() işlevini kullanabilmek için, PHP'nin MySQLi desteği ile derlenmiş olması gerekmektedir. Bunların yanında, bütün PHP sürümlerine eklenen dizge ve değişken işlevleri gibi birçok çekirdek işlev de mevcuttur. phpinfo() ya da get_loaded_extensions() işlevlerine yapılacak bir çağrı ile PHP'ye hangi eklentilerin yüklenmiş olduğunu görebilirsiniz. Birçok uzantı öntanımlı olarak etkinleştirilmiş olup PHP Kılavuzunda bu eklentilerle ilgili geniş bilgi verilmiştir. PHP'yi nasıl yapılandırmanız gerektiğiyle ilgili bilgiyi yapılandırma ve kurulum bölümleri ile eklerdeki özel bölümlerde bulabilirsiniz.

Kılavuzun işlev tanımı nasıl okunur bölümünde bir işlev tanımının nasıl okunup anlaşılabileceği ile ilgili bilgiler bulunmaktadır. Bir işlevin bir değer mi döndürdüğü yoksa aktarılan değerlerle sadece işlem mi yaptığını anlamak önemlidir. Örneğin, str_replace() değiştirilmiş dizgeyle dönerken, usort() sadece kendisine aktarılan değer üzerinde çalışır. Ayrıca, her kılavuz sayfasında her işlevin değiştirgeleri, davranış değişiklikleri, başarı ya da başarısızlık durumunda döndürülen değerler ve kullanılabilirlik bilgileri bulunmaktadır. Bu önemli (ve sıklıkla algılanması güç) farklılıkların bilinmesi, doğru PHP kodunun yazılabilmesi için büyük önem taşımaktadır.

Bilginize: Bir işleve, işlevin kabul etmeyeceği bir değiştirge (örneğin, bir dizge gerekirken bir dizi) belirtilmesi durumunda işlevin döndüreceği değer tanımsızdır (beklenen değer olmayabilir). Böyle bir durumda çoğunlukla null döner, fakat bu böyle düzenlenmiş demek değildir ve buna güvenilmemelidir. PHP 8.0.0 itibariyle, böyle bir durumda bir TypeError istisnası yavrulanması gerekir.

Bilginize:

Sayıl türler, zorlanmış kipteyken yerleşik işlevlerde öntanımlı olarak null olabilmektedir. PHP 8.1.0'dan itibaren nullable türünde bildirilmeyen bir dahili işlev değiştirgesine null aktarılması önerilmemekte ve sayıl türlerin açıkça nullable olarak bildirilmesini gerektiren kullanıcı tanımlı işlevlerin davranışıyla uyum sağlamak için zorlanmış kipte kullanımdan kaldırma uyarısı çıktılanmaktadır.

Örneğin, strlen() işlevinin $dizge değiştirgesinde string türünde bir değer alabileceği belirtilmiş, null olabileceği belirtilmemiştir. Geriye uyumluluk adına PHP zorlayıcı kipte bu değiştirgeye değer olarak null aktarılmasına izin vermekte olup değiştirge örtük olarak string türüne dönüştürülmekte ve sonuçta değer "" olmaktadır. Katı kipte ise bunun aksine, TypeError çıktılanmaktadır.

<?php
var_dump
(strlen(null));
// "Önerilmiyor: string türündeki 1. değiştirgeye ($dizge) null aktarımı PHP 8.1.0 itibariyle önerilmiyor.
// int(0)

var_dump(str_contains("foobar"null));
// "Önerilmiyor: string türündeki 2. değiştirgeye ($iğne) null aktarımı PHP 8.1.0 itibariyle önerilmiyor.
// bool(true)
?>

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top