Arrayval функциясы

PHP-дің стандартты кітапханасында arrayval функциясы жоқ, бірақ ұқсас функционалды өзіңіз жүзеге асыра аласыз. Төменде кез келген мәнді массивке түрлендіретін реалізация мысалы келтірілген: егер мән массив болса, ол өзгеріссіз қайтарылады, басқа типтер үшін бір элементтен тұратын массив жасалады.

Функцияны жүзеге асыру

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

Қолдану мысалы

Жолды біздің функциямыз көмегімен массивке түрлендірейік:

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

Кодты орындау нәтижесі:

php['abcde']

Қолдану мысалы

Санды түрлендіруге тырысайық:

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

Кодты орындау нәтижесі:

php[123]

Қолдану мысалы

Массивпен жұмысты тексерейік:

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

Кодты орындау нәтижесі:

php[1, 2, 3]

Балама шешімдер

PHP-де массивке түрлендірудің басқа тәсілдері бар:

php<?php
  // (array) типін түрлендіруді қолдану
  $array = (array)'string';
  print_r($array); // ['string']
  
  // Объекттер үшін тип түрлендіру басқаша жұмыс істейді
  $obj = new stdClass();
  $obj->prop = 'value';
  $array = (array)$obj;
  print_r($array); // ['prop' => 'value']
?>

Сондай-ақ қараңыз

  • is_array функциясын,
    ол айнымалының массив екенін тексереді
  • settype функциясын,
    ол айнымалының типін түрлендіреді