Как преобразовать число в php массив

Аватар пользователя Аслан Аутлев
Аслан Аутлев
22 ноября 2022

Если нам требуется разбить число 123 в массив на составляющие [1, 2, 3], можно воспользоваться приведением типов и обходом массива.

Можно воспользоваться циклом foreach.

Пример:

<?php

$number = 123;

$numberToString = (string)$number;
$lengthNumber = strlen($numberToString);

$result = [];
for ($i = 0; $i < $lengthNumber; $i++) {
    $result[] = (int)$numberToString[$i];
}

print_r($result); // => [1, 2, 3]

А также можно воспользоваться стандартной PHP функцией array_map():

array_map() — Применяет callback-функцию ко всем элементам указанных массивов.

<?php
array_map(?callable $callback, array $array, array ...$arrays): array

Более подробное описание функции можно найти в документации php.net

<?php

$number = 123;

$numberToString = (string)$number;
$numberToArray = str_split($numberToString);

$result = array_map(function ($item) {
    return (int)$item;
}, $numberToArray);

print_r($result); // => [1, 2, 3]
0 0
Аватар пользователя Roman Ashikov
Roman Ashikov
29 ноября 2021

Очень просто. Воспользуемся стандартными средствами для явного приведения типов. Имя приводимого типа записывается в скобках перед именем переменной. Взгляните:

<?php

$number = 123;
(array) $number;
print_r($number);
//=> [
//=>     123,
//=> ] 
0 0
Познакомьтесь с основами PHP бесплатно