具有相同键的多个数组的PHP多维数组?

时间:2016-04-08 16:05:14

标签: php arrays multidimensional-array soap-client

我一直在尝试多种事情,因为我的生活无法让它发挥作用。我开始认为在这一点上可能不可能。

所以我有一个SOAP API我也在发送这个数组。下面是我目前使用的代码,但不发送多个值。它只是使用最后一个,因为它覆盖了前一个。

this thread,我正在做什么应该有效?

<?php $query = mysql_query("SELECT * FROM users ORDER BY id DESC");

while ($rows = mysql_fetch_array($query)) {
$steamid = $rows['steamid'];
$tlink = $rows['tlink'];
$email = $rows['email'];
$twitter = $rows['twitter'];
$admin = $rows['admin'];
$name = $rows['name'];
$rank = $rows['rank'];
$avatar = $rows['avatar'];
$ban = $rows['ban'];
}

echo '<img src="'.$avatar.'"> <br> '.$name.' <br> '.$tlink.' ';

?>

返回:

$my_array['sn'] = "234234232";
$my_array['arrayparams'] = array(
'Param' => array( 'Name' =>     'sending_key', 'Value' => 'blah',), 
'Param' => array( 'Name' => 'sending_key2', 'Value' => '2',),
);
$my_array['push'] = true; 
$my_array['endsession'] = false;

我只是有时间来发送它:

array(4) {
  ["sn"]=>
  string(12) "234234232"
  ["arrayparams"]=>
  array(1) {
    ["Param"]=>
    array(2) {
      ["Name"]=>
      string(61) "sending_key2"
      ["Value"]=>
      string(1) "2"
    }
  }
  ["push"]=>
  bool(true)
  ["endsession"]=>
  bool(false)
}

'Param'数组非常严格,必须具有此值,我无法更改为'Param2'以使其工作。先谢谢!

2 个答案:

答案 0 :(得分:0)

问题是您无法在多个密钥中设置密钥“Param”。

您需要将“Param”定义为实际数组,而不是数组中的多个键。

像这样......

$my_array['Param'] = [
    ['Name' => 'sending_key', 'Value' => 'blah'],
    ['Name' => 'sending_key2', 'Value' => '2']
];

答案 1 :(得分:0)

你可以这样做吗?

$my_array['arrayparams'] = array(
    array('Param' => array( 'Name' =>     'sending_key', 'Value' => 'blah',)), 
    array('Param' => array( 'Name' => 'sending_key2', 'Value' => '2',)),
);