Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356

Вытащить значения с массива

30.06.2016, 16:02. Показов 6179. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хоть убейте , толи не думается сегодня толи что я делаю не так .
На выходе должен быть такой массив.
array(23,5,20,55);
Исходный
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [id] => 23
                )
 
            [1] => Array
                (
                    [chance] => 5
                )
 
        )
 
    [1] => Array
        (
            [0] => Array
                (
                    [id] => 20
                )
 
            [1] => Array
                (
                    [chance] => 55
                )
 
        )
 
)
Потратил уйму времени не справился, поэтому сдаюсь вам
PHP
1
2
3
4
5
6
7
foreach ($arr['itemsM'] as $key => $value) {
                
                $paramM[] = $value[$key]['id'];
                $paramM[] = $value[$key]['chance'];
                
 
            }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.06.2016, 16:02
Ответы с готовыми решениями:

Как вытащить значения из массива?
Здравствуйте! Пытаюсь извлечь значения из массива phpoptions (переданные значения), почему-то ничего не выводится. Форма: <form...

Вытащить значения из сессии
Доброго времени суток! Ребята, помогите пожалуйста вытащить значения из сессии. У меня есть авторизация по логину и паролю. В инпутах...

Вытащить из массива
Господа! Подскажите пожалуйста как мне вытащить из массива следующего вида print_r ($row); вывело следующее: Array ( =>...

10
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
30.06.2016, 16:35
Сколько ключей до номера 23?
Array
(
[0] => Array
(
[0] => Array
(
[id] => 23
А у тебя 2
PHP
1
$value[$key]['id'];
[0][0]['id'] даст 23
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
30.06.2016, 17:15
Если на выходе надо получить array(23,5,20,55);
то, возможно, подойдет эта функция:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function myForeach($arr){
    if(is_array($arr)){
        foreach($arr as $k => $v){
            if(!is_array($v)){
                echo '['.$k.'] => '.$v."\n";
            }
            elseif(is_array($v)){
                myForeach($v);
            }
        }
    }
    else echo 'Объект не является массивом';
}
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
30.06.2016, 17:22  [ТС]
Пифагор,
PHP
1
2
3
4
[id] => 6
[chance] => 0
[id] => 5
[chance] => 0
Не то возвращает и что то напутано
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
30.06.2016, 17:25
Ваш массив?
PHP
1
2
3
4
$arr = array(
    '0' => array('0' => array('id' => '23'), '1' => array('chance' => '5')),
    '1' => array('0' => array('id' => '20'), '1' => array('chance' => '55'))
    );
Добавлено через 38 секунд
http://sandbox.onlinephpfuncti... c3d18e9b86
1
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
30.06.2016, 17:25  [ТС]
Пифагор, вроде он

PHP
1
2
3
4
5
6
7
8
foreach ($arr['itemsG'] as $key => $value) {
                    $paramG[] = $lastID;
                    foreach ($value as $k => $v) {
 
                        $paramG[] = $v;
                    }
                    
                }
Вот почти то что надо но не совсем.Доработать надо
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
30.06.2016, 17:28
Значит, мой код возвращает то, что требовалось, с сохраненными ключами.
1
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
30.06.2016, 17:29
Лучший ответ Сообщение было отмечено maruo как решение

Решение

Цитата Сообщение от Пифагор Посмотреть сообщение
if(!is_array($v))
Цитата Сообщение от Пифагор Посмотреть сообщение
elseif(is_array($v))
Вот это вообще сильно Переменная либо массив, либо не массив. Не нужно оба раза проверять это. Вторую строчку можно попросту заменить на "else" - от этого ничего не изменится.
Цитата Сообщение от maruo Посмотреть сообщение
На выходе должен быть такой массив.
array(23,5,20,55);
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<pre>
<?php
$a = array(
    0 => array(0 => array('id' => 23), 1 => array('chance' => 5)),
    1 => array(0 => array('id' => 20), 1 => array('chance' => 55)),
);
 
print_r($a);
 
$b = array();
foreach ($a as $v)
{
    $b[] = $v[0]['id'];
    $b[] = $v[1]['chance'];
}
print_r($b);
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [id] => 23
                )
 
            [1] => Array
                (
                    [chance] => 5
                )
 
        )
 
    [1] => Array
        (
            [0] => Array
                (
                    [id] => 20
                )
 
            [1] => Array
                (
                    [chance] => 55
                )
 
        )
 
)
Array
(
    [0] => 23
    [1] => 5
    [2] => 20
    [3] => 55
)
2
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
30.06.2016, 17:32  [ТС]
Пифагор, сохранять ключи не надо, PDO не примет такие данные ему нужен массив со значениями через запятую внутри
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
30.06.2016, 17:33
Цитата Сообщение от pav1uxa Посмотреть сообщение
Вторую строчку можно попросту заменить на "else" - от этого ничего не изменится.
Верно. Перестарался

Добавлено через 40 секунд
Цитата Сообщение от maruo Посмотреть сообщение
Пифагор, сохранять ключи не надо, PDO не примет такие данные ему нужен массив со значениями через запятую внутри
Ну, пропустите через array_values()
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
30.06.2016, 17:39  [ТС]
pav1uxa, да уж, я знал что задача проста, но почему то не додумался 0, 1 прописать.
Надо сегодня отдых себе устроить


Цитата Сообщение от Пифагор Посмотреть сообщение
Ну, пропустите через array_values()
Другой результат бы получился он бы вместо ключа вернул бы [0]=>20,[1]=>55
Я уже пробовал так , я говорю я потратил уйму времени на детскую задачку.
А решение было еще проще.Надо давать себе отдых наверно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.06.2016, 17:39
Помогаю со студенческими работами здесь

Вытащить значение из массива?
Есть массив: { &quot;status&quot; : &quot;success&quot;, &quot;prices&quot; : } Надо по &quot;market_hash_name&quot; вытащить &quot;price&quot; . То есть , например у...

Вытащить значение из массива
День добрый, есть у меня переменная $arResult. и если ее вывести через print_r, то в ней будет вот такая штука. У меня никак не получается...

Рекурсивно вытащить id из массива
Есть большой массив вида ... =&gt; Array ( =&gt; 261 =&gt; 143 =&gt; Array ...

Как вытащить значение из массива?
Честно говоря, я вообще не уверен что это массив. В общем я делаю запрос и получаю вот такой ответ. Отсюда надо вытащить то, что...

Вытащить элементы из массива по ключу
Добрый день! Есть массив $users = array( array('name' =&gt; 'Владимир', 'email' =&gt; 'vlad@saytum.ru', 'age' =&gt; 14,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru