Funkcija arrayval

U standardnoj PHP biblioteci ne postoji funkcija arrayval, ali možete implementirati sličnu funkcionalnost sami. Ispod je dat primer implementacije koja pretvara bilo koju vrednost u niz: ako je vrednost već niz, vraća se bez izmena, za druge tipove kreira se niz sa jednim elementom.

Implementacija funkcije

php<?php
  function arrayval($value): array {
    return is_array($value) ? $value : [$value];
  }
?>

Primer upotrebe

Pretvorimo string u niz pomoću naše funkcije:

php<?php
  function arrayval($value): array {
    return is_array($value) ? $value : [$value];
  }
  
  $res = arrayval('abcde');
  print_r($res);
?>

Rezultat izvršavanja koda:

php['abcde']

Primer upotrebe

Pokušajmo da pretvorimo broj:

php<?php
  function arrayval($value): array {
    return is_array($value) ? $value : [$value];
  }
  
  $res = arrayval(123);
  print_r($res);
?>

Rezultat izvršavanja koda:

php[123]

Primer upotrebe

Proverimo rad sa nizom:

php<?php
  function arrayval($value): array {
    return is_array($value) ? $value : [$value];
  }
  
  $res = arrayval([1, 2, 3]);
  print_r($res);
?>

Rezultat izvršavanja koda:

php[1, 2, 3]

Alternativna rešenja

U PHP-u postoje i drugi načini za pretvaranje u niz:

php<?php
  // Korišćenje (array) konverzije tipa
  $array = (array)'string';
  print_r($array); // ['string']
  
  // Za objekte konverzija tipa radi drugačije
  $obj = new stdClass();
  $obj->prop = 'value';
  $array = (array)$obj;
  print_r($array); // ['prop' => 'value']
?>

Pogledajte takođe

  • funkciju is_array,
    koja proverava da li je promenljiva niz
  • funkciju settype,
    koja pretvara tip promenljive