Как преобразовать в одномерный массив ? - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Sun, 22 Dec 2024 23:49:44 +0300<strong>JiGaN</strong>, не за что <img src="https://visavi.net/uploads/stickers/D.gif" alt="D">
https://visavi.net/topics/43594/696302
Как преобразовать в одномерный массив ? СуицидникTue, 30 May 2017 21:54:17 +0300Сообщенияhttps://visavi.net/topics/43594/696302<strong>Тв0й батя</strong>,Между прочим AkexandrFox дельный совет дал, хорош кичиться, простого спасибо было бы приятней услышать.
https://visavi.net/topics/43594/696301
Как преобразовать в одномерный массив ? JiGaNTue, 30 May 2017 20:47:38 +0300Сообщенияhttps://visavi.net/topics/43594/696301<strong>AkexandrFox</strong>, где-то я уже это слышал <img src="https://visavi.net/uploads/stickers/D.gif" alt="D">
https://visavi.net/topics/43594/696295
Как преобразовать в одномерный массив ? СуицидникTue, 30 May 2017 01:23:38 +0300Сообщенияhttps://visavi.net/topics/43594/696295Я вот не понимаю просто, что за упоротый кодинг. <br>
Что, разве сложно по такому же принципу, как ты выводишь, просто создать новый массив.<br>
<pre class="prettyprint">
<?php
Class Mass {
private $array = [];
public function __construct($array) {
$this->recursive($array);
}
private function recursive($array) {
foreach ($array as $key => $value) {
if(is_array($value)) {
$this->recursive($value);
} else {
$this->array[] = $value;
}
}
}
public function getArray() {
return $this->array;
}
}
$m = array("Бурундук", "Суслик", "хомяк", 543, "крот"); // 5 элементов
$c = array("самолет", "Хозяин", 53, "Moscow", 34, "Montana", "London", 188, "Paris", "Tokyo"); // 10 элементов
$o = array("Хрусталь", "Изумруд", "Линейка", 333, "Водопад"); // 5 элементов
$f = array($m, $c, $o); // 20 элементов
$i = array($m, $o); // 10 элементов
$t = array($i, $c); // 20 элементов
$z = array($t, $i, $t); // 50 элементов
$w = array($m, $z, "народный", $c, "дерево", $z, "Лисенок", $o, "кирпичный", $z);
$mass = new Mass($w);
echo '<pre>';
print_r($mass->getArray());
</pre>
<br>
<em><span style="font-size:x-small">Добавлено через 04:44 сек.</span></em><br>
Получается что-то вроде:<br>
Array<br>
(<br>
[0] => Бурундук<br>
[1] => Суслик<br>
[2] => хомяк<br>
[3] => 543<br>
[4] => крот<br>
[5] => Бурундук<br>
[6] => Суслик<br>
[7] => хомяк<br>
[8] => 543<br>
[9] => крот<br>
[10] => Хрусталь<br>
[11] => Изумруд<br>
[12] => Линейка<br>
[13] => 333<br>
[14] => Водопад<br>
[15] => самолет<br>
[16] => Хозяин<br>
[17] => 53<br>
[18] => Moscow<br>
[19] => 34<br>
[20] => Montana<br>
[21] => London<br>
...<br>
<br>
Будь проще, и люди тебе будут охотнее помогать.<br>
В этот раз, для тебя я сделал исключение, чтобы ты не терял веру в человечество. А так, желание тебе помогать всё меньше и меньше
https://visavi.net/topics/43594/696294
Как преобразовать в одномерный массив ? AkexandrFoxTue, 30 May 2017 01:08:38 +0300Сообщенияhttps://visavi.net/topics/43594/696294<strong>AkexandrFox</strong>, <img src="https://visavi.net/uploads/stickers/facepalm.gif" alt="facepalm"> уже жалею, что попросил помощи... Если бы мне надо было тупо слить несколько массивов в один, то я бы просто тупо прогнал бы через цикл.<img src="https://visavi.net/uploads/stickers/kulak.gif" alt="kulak">
https://visavi.net/topics/43594/696293
Как преобразовать в одномерный массив ? СуицидникTue, 30 May 2017 00:59:47 +0300Сообщенияhttps://visavi.net/topics/43594/696293<a href="http://php.net/manual/ru/function.array-merge.php" target="_blank" rel="nofollow">http://php.net/manual/ru/function.array-merge.php</a> ?<br>
<br>
<em><span style="font-size:x-small">Добавлено через 01:39 сек.</span></em><br>
count($a) лучше выносить в переменную, так оно не будет каждый раз считать количество элементов<br>
<br>
<em><span style="font-size:x-small">Добавлено через 02:53 сек.</span></em><br>
А по поводу того, как из многомерного сделать одномерный - тут смотря в каком виде нужно его получить. Но всё равно нужно вызывать рекурсивно
https://visavi.net/topics/43594/696292
Как преобразовать в одномерный массив ? AkexandrFoxTue, 30 May 2017 00:54:34 +0300Сообщенияhttps://visavi.net/topics/43594/696292Имеется код вывода каждого элемента из смешанного многомерного массива.<br>
<br>
Вопрос: Как преобразовать этот массив в одномерный ?<br>
<pre class="prettyprint">
$m = array("Бурундук", "Суслик", "хомяк", 543, "крот"); // 5 элементов
$c = array("самолет", "Хозяин", 53, "Moscow", 34, "Montana", "London", 188, "Paris", "Tokyo"); // 10 элементов
$o = array("Хрусталь", "Изумруд", "Линейка", 333, "Водопад"); // 5 элементов
$f = array($m, $c, $o); // 20 элементов
$i = array($m, $o); // 10 элементов
$t = array($i, $c); // 20 элементов
$z = array($t, $i, $t); // 50 элементов
$w = array($m, $z, "народный", $c, "дерево", $z, "Лисенок", $o, "кирпичный", $z); // 174 элемента
function recursion($a) {
if (is_array($a)) {
for($i=0; $i < count($a); $i++) {
recursion($a[$i]); } }
else {
echo $a.'</hr>'; } }
recursion($w);
</pre>
https://visavi.net/topics/43594/696289
Как преобразовать в одномерный массив ? СуицидникMon, 29 May 2017 22:25:35 +0300Сообщенияhttps://visavi.net/topics/43594/696289