Как вывести значения массива

Статус
В этой теме нельзя размещать новые ответы.

Sveta

Guest
Как вывести значения массива

У меня есть массив в переменной $boat
PHP:
Array
(
    [configuration] => Array
        (
            [request] => Order
            [status] => 
        )

    [billing] => Array
        (
            [pono] => 
            [dealerloadno] => 
            [terms] => 
            [submit_order] => Y
        )

    [order] => Array
        (
            [type] => S
            [reqshipdate] => 
            [retailcusname] => 
            [retailcusemail] => 
            [order_no] => 
            [trailer_order_no] => 
            [boatonly] => Y
        )

    [instructions] => Array
        (
            [value] => 
        )

    [metalflake] => Array
        (
            [requested] => 
            [size] => 
        )

    [decal] => Array
        (
            [displayed] => Y
            [instructions] => 
        )

    [mcbydesign] => Array
        (
            [value] => 
        )

    [consumer] => Array
        (
            [dab_id] => 
            [user_id] => 
            [comments] => 
        )

    [model] => Array
        (
            [id] => MS230X30BACKSIDE.06
            [version] => 1
            [tech_grp] => MBCBOAT
            [option] => Array
                (
                    [id] => 
                    [label] => 
                    [choiceid] => 
                    [choice] => 
                )

            [options] => Array
                (
                    [0] => Array
                        (
                            [id] => COLOR1
                            [label] => Hull 1
                            [choice] => WHITE
                            [choiceid] => white
                        )

                    [1] => Array
                        (
                            [id] => COLOR2
                            [label] => Hull 2
                            [choice] => VIPER RED
                            [choiceid] => viperred
                        )

                    [2] => Array
                        (
                            [id] => COLOR3
                            [label] => Deck 2
                            [choice] => WHITE
                            [choiceid] => white
                        )

                    [3] => Array
                        (
                            [id] => COLOR4
                            [label] => Deck 1
                            [choice] => MIDNITE BLACK
                            [choiceid] => midniteblack
                        )

                    [4] => Array
                        (
                            [id] => GRAPHICS5
                            [label] => Graphics
                            [choice] => MIDNITE BLACK
                            [choiceid] => midniteblack
                        )

   

                )

        )

)
Как достать из него все значения элементов option ?
т.е.
PHP:
$boat['model']['option'][$id]['id']
$boat['model']['option'][$id]['label']
$boat['model']['option'][$id]['choised']
$boat['model']['option'][$id]['choice']
 

Фанат

oncle terrible
Команда форума
ты хотела сказать, что у тебя есть массив $boat['model']['options'], и ты хочешь перебрать все его элементы?

обычным порядком, через foreach
 

Sveta

Guest
да, но так что-то не получилось((
PHP:
$i=0;
			foreach ($boat as $opt=>$value){
					echo $opt['model']['option'][$i]['id'];
					echo $opt['model']['option'][$i]['label'];
					echo $opt['model']['option'][$i]['choiceid'];
					echo $opt['model']['option'][$i]['choice'];
				
				$i++;
			}
 

Фанат

oncle terrible
Команда форума
где.
в моём
сообщении
написано
что
массив - $boat?
у меня, кажется, указано другое имя?
 

Sveta

Guest
да, но у меня-то ведь массив $boat и именно из него нужно выбрать нужные элементы. И он многоуровневый, а не только $boat['model']['options'] - это только его часть и то без значений.
Значения есть в $boat['model']['option']['id'] ... и так далее. Выше приведена полная структура массива.
 

Фанат

oncle terrible
Команда форума
ещё раз.
читай по буквам.
у тебя есть массив
$boat['model']['options']
тебе ЕГО надо перебрать с помощью foreach.
какое из употреблённых мной слов тебе непонятно?

ты не путаешь, часом,
$boat['model']['options']
и
$boat['model']['option']
?
 

Sveta

Guest
Ой! Даже не заметила - вот убрала "option" осталось
PHP:
[model] => Array
        (
            [id] => MS230X30BACKSIDE.06
            [version] => 1
            [tech_grp] => MBCBOAT
            [options] => Array
                (
                    [id] => 
                    [label] => 
                    [choiceid] => 
                    [choice] => 
                    [0] => Array
                        (
                            [id] => COLOR1
                            [label] => Hull 1
                            [choice] => WHITE
                            [choiceid] => white
                        )

                    [1] => Array
                        (
                            [id] => COLOR2
                            [label] => Hull 2
                            [choice] => VIPER RED
                            [choiceid] => viperred
                        )

                    [2] => Array
                        (
                            [id] => COLOR3
                            [label] => Deck 2
                            [choice] => WHITE
                            [choiceid] => white
                        )
Спасибки, что указалаи. Вот его и нада перебрать
 

Sveta

Guest
Повторила - нече не выходит((

Fatal error: Cannot use string offset as an array in /usr/local/apache2/htdocs/znf_dab/mcws/Business/CreateXmlBoat.php on line 53
 

Sveta

Guest
PHP:
$i=0;
            foreach ($boat as $opt=>$value){
                    echo $opt['model']['options'][$i]['id'];
                    echo $opt['model']['options'][$i]['label'];
                    echo $opt['model']['options'][$i]['choiceid'];
                    echo $opt['model']['options'][$i]['choice'];
                
                $i++;
            }
вот так повторила

-~{}~ 04.11.05 12:40:

а как нада?
 

Фанат

oncle terrible
Команда форума
видимо, надо по буквам.
у тебя есть массив $boat['model']['options']
тебе понятна эта фраза?
 

Sveta

Guest
Ну чего меня мучать-то??? ((( yнельзя ли подсказать как конкретно это сделать?
Так тоже не выходит:
PHP:
	$i=0;
            foreach ($boat['model']['options'] as $opt){
                    echo $opt[$i]['id'];
                    echo $opt[$i]['label'];
                    echo $opt[$i]['choiceid'];
                    echo $opt[$i]['choice'];
                
                $i++;
            }
-~{}~ 04.11.05 12:48:

и кода тут не многа
 

Sveta

Guest
потаму что есть элементы, которые нужно вывести
$boat['model']['option'][1]['id'] - один из них
$i - порядковый номер
 

Фанат

oncle terrible
Команда форума
при чём здесь какой-то номер?
ты совсем не понимаешь, что такое массив?
что у тебя в $opt?
не знаешь?
НУ КАК МОЖНО выводить что-то, НЕ ЗНАЯ, что у тебя там лежит?
 

Sveta

Guest
хм, похоже Вы вовсе не хотите мне помочь. Я по-моему понятно разъяснила, что мне необходимо получить, и структуру массива полную написала.
 

Фанат

oncle terrible
Команда форума
самое интересное, что ты и получила, что хотела.
вопрос исчерпан.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху