arrayval Fonksiyonu
PHP'nin standart kütüphanesinde arrayval fonksiyonu bulunmamaktadır, ancak benzer bir işlevselliği kendiniz uygulayabilirsiniz. Aşağıda herhangi bir değeri diziye dönüştüren bir uygulama örneği sunulmuştur: eğer değer zaten bir dizi ise, değiştirilmeden döndürülür, diğer tipler için tek elemanlı bir dizi oluşturulur.
Fonksiyon Uygulaması
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
?>
Kullanım Örneği
Fonksiyonumuzu kullanarak bir stringi diziye dönüştürelim:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval('abcde');
print_r($res);
?>
Kodun çalıştırılma sonucu:
['abcde']
Kullanım Örneği
Bir sayıyı dönüştürmeyi deneyelim:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval(123);
print_r($res);
?>
Kodun çalıştırılma sonucu:
[123]
Kullanım Örneği
Bir dizi ile çalışmasını kontrol edelim:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval([1, 2, 3]);
print_r($res);
?>
Kodun çalıştırılma sonucu:
[1, 2, 3]
Alternatif Çözümler
PHP'de diziye dönüştürmenin diğer yolları mevcuttur:
<?php
// (array) tip dönüşümü kullanımı
$array = (array)'string';
print_r($array); // ['string']
// Nesneler için tip dönüşümü farklı çalışır
$obj = new stdClass();
$obj->prop = 'value';
$array = (array)$obj;
print_r($array); // ['prop' => 'value']
?>