Az arrayval függvény
A PHP standard könyvtárában nincs arrayval függvény, de hasonló funkcionalitást implementálhatunk saját magunk. Az alábbiakban egy példaimplementáció látható, amely bármilyen értéket tömbbe konvertál: ha az érték már tömb, akkor változatlanul visszaadja, más típusok esetén egy elemű tömböt hoz létre.
A függvény implementációja
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
?>
Példa a használatra
Konvertáljunk egy stringet tömbbé a mi függvényünkkel:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval('abcde');
print_r($res);
?>
A kód végrehajtásának eredménye:
['abcde']
Példa a használatra
Próbáljunk meg egy számot konvertálni:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval(123);
print_r($res);
?>
A kód végrehajtásának eredménye:
[123]
Példa a használatra
Ellenőrizzük a működést tömbbel:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval([1, 2, 3]);
print_r($res);
?>
A kód végrehajtásának eredménye:
[1, 2, 3]
Alternatív megoldások
>A PHP-ban más módszerek is léteznek a tömbbe konvertálásra:
<?php
// A (array) típuskonverzió használata
$array = (array)'string';
print_r($array); // ['string']
// Objektumok esetén a típuskonverzió másképp működik
$obj = new stdClass();
$obj->prop = 'value';
$array = (array)$obj;
print_r($array); // ['prop' => 'value']
?>