Funktionen arrayval
Der er ingen arrayval-funktion i PHP's standardbibliotek, men du kan implementere lignende funktionalitet selv. Nedenfor vises et eksempel på en implementering, der konverterer enhver værdi til et array: hvis værdien allerede er et array, returneres den uændret, for andre typer oprettes et array med ét element.
Implementering af funktionen
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
?>
Eksempel på brug
Lad os konvertere en streng til et array ved hjælp af vores funktion:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval('abcde');
print_r($res);
?>
Resultatet af kodeudførelsen:
['abcde']
Eksempel på brug
Lad os prøve at konvertere et tal:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval(123);
print_r($res);
?>
Resultatet af kodeudførelsen:
[123]
Eksempel på brug
Lad os tjekke arbejdet med et array:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval([1, 2, 3]);
print_r($res);
?>
Resultatet af kodeudførelsen:
[1, 2, 3]
Alternative løsninger
Der findes andre måder at konvertere til et array i PHP:
<?php
// Brug af (array) typekonvertering
$array = (array)'string';
print_r($array); // ['string']
// For objekter fungerer typekonvertering anderledes
$obj = new stdClass();
$obj->prop = 'value';
$array = (array)$obj;
print_r($array); // ['prop' => 'value']
?>