Функција arrayval
Во стандардната библиотека на PHP нема функција arrayval, но може да се имплементира слична функционалност самостојно. Подолу е претставен пример за имплементација која конвертира која било вредност во низа: ако вредноста веќе е низа, се враќа непроменета, за другите типови се креира низа со еден елемент.
Имплементација на функцијата
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
?>
Пример за употреба
Да конвертираме стринг во низа со помош на нашата функција:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval('abcde');
print_r($res);
?>
Резултат од извршување на кодот:
['abcde']
Пример за употреба
Да пробаме да конвертираме број:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval(123);
print_r($res);
?>
Резултат од извршување на кодот:
[123]
Пример за употреба
Да ја провериме работата со низа:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval([1, 2, 3]);
print_r($res);
?>
Резултат од извршување на кодот:
[1, 2, 3]
Алтернативни решенија
Во PHP постојат други начини за конверзија во низа:
<?php
// Употреба на (array) конверзија на тип
$array = (array)'string';
print_r($array); // ['string']
// За објекти конверзијата на тип работи поинаку
$obj = new stdClass();
$obj->prop = 'value';
$array = (array)$obj;
print_r($array); // ['prop' => 'value']
?>