Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Преобразование массива
 
 автор: Belkin   (23.12.2012 в 07:39)   письмо автору
 
 

Все привет!

Что-то я совсем уже..

Есть переменная $arrays.

Вид имеет такой:
[0] => Array
    (
        [0] => Array
            ()
        [1] => Array
            ()
        [2] => Array
            ()
    )


Есть такой код:

someMethod(array(
       'vasya' => 10,
       'petya' => 20,
       $arrays
));


В итоге вид получается такой:
['vasya'] => 10
['petya'] => 20
[0] => Array
    (
        [0] => Array
            ()
        [1] => Array
            ()
        [2] => Array
            ()
    )


А нужно такой:


['vasya'] => 10
['petya'] => 20
[0] => Array
        ()
[1] => Array
        ()
[2] => Array
        ()


Пробовал так, но само собой не получилось (но идея наверное такая) :)
someMethod(array(
       'vasya' => 10,
       'petya' => 20,
       array_walk($arrays, function($val,$key) { 
              return $val;
       })
));



Как быть?

  Ответить  
 
 автор: confirm   (23.12.2012 в 08:32)   письмо автору
 
   для: Belkin   (23.12.2012 в 07:39)
 

<?
$a 
= array(array(),array(),array());
$b = array('vasya' => 10'petya' => 20);
echo 
'<pre>';
print_r(array_merge($b$a));

  Ответить  
 
 автор: Belkin   (23.12.2012 в 20:19)   письмо автору
 
   для: confirm   (23.12.2012 в 08:32)
 

К сожалению вроде бы не помогло.

Пишу реальный кусок кода, чтобы было понятней (тут я уже попытался использовать array_map(), но неудача).

<?php
        $XMLCreator 
= new XMLCreator(array(
            
'DeliveryRequest xmlns="http://www.somesite.com/schema/request/v1"' => array(
                
'message' => array(
                    
'sender' => '',
                    
'test' => ''
                
), array_map(function($arrays) {
                    return 
$arrays;
                }, 
$this->orders)
        )));


Где $this->orders имеет такой вид:
<?php
Array
(
    [
0] => Array
        (
            [
number] => 1
            
[Region] => Array
                (
                    [
departure] => Киев
                    
[destination] => Москва
                
)
        )
    [
1] => Array
        (
            [
number] => 
            [
Region] => Array
                (
                    [
departure] => Днепродзержинск
                    
[destination] => Полтава
                
)
        )
)


В итоге получается так:
<?php
           
[DeliveryRequest xmlns="http://www.somesite.com/schema/request/v1"] => Array
                (
                    [
message] => Array
                        (
                            [
sender] => 
                            [
test] => 
                        )

                    [
0] => Array
                        (
                            [
0] => Array
                                (
                                    [
number] => 
                                    [
Region] => Array
                                        (
                                            [
departure] => Днепродзержинск
                                            
[destination] => Полтава
                                        
)
                                )

                            [
1] => Array
                                (
                                    [
number] => 
                                    [
Region] => Array
                                        (
                                            [
departure] => Днепродзержинск
                                            
[destination] => Полтава
                                        
)
                                )
                         )
                )


А надо, чтобы получилось так:
<?php
           
[DeliveryRequest xmlns="http://www.somesite.com/schema/request/v1"] => Array
                (
                    [
message] => Array
                        (
                            [
sender] => 
                            [
test] => 
                        )

                            [
0] => Array
                                (
                                    [
number] => 
                                    [
Region] => Array
                                        (
                                            [
departure] => Днепродзержинск
                                            
[destination] => Полтава
                                        
)
                                )

                            [
1] => Array
                                (
                                    [
number] => 
                                    [
Region] => Array
                                        (
                                            [
departure] => Днепродзержинск
                                            
[destination] => Полтава
                                        
)
                                )
                )

  Ответить  
 
 автор: confirm   (23.12.2012 в 21:49)   письмо автору
 
   для: Belkin   (23.12.2012 в 20:19)
 

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

  Ответить  
 
 автор: Belkin   (23.12.2012 в 22:05)   письмо автору
 
   для: confirm   (23.12.2012 в 21:49)
 

Я извиняюсь, просто уставший, все работает, сначала не так подставил. Спасибо Вам!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования