使用PHP动态创建数组
大家好,请帮助一个PHP初学者。我试图将动态创建的variabled加载到一个数组中,以便稍后重新读取,原因是发送的SOAP消息非常混乱,我试图创建一个不太复杂的数组:使用PHP动态创建数组,php,arrays,Php,Arrays,大家好,请帮助一个PHP初学者。我试图将动态创建的variabled加载到一个数组中,以便稍后重新读取,原因是发送的SOAP消息非常混乱,我试图创建一个不太复杂的数组: $placea = "place a"; $placeb = "place b"; $myarray = array(); echo "<pre>"; print_r($myarray); echo "</pre>"; 我该如何用php写出来?很抱歉,如果其bleek和/或数组结构不正确,则只需重复
$placea = "place a";
$placeb = "place b";
$myarray = array();
echo "<pre>";
print_r($myarray);
echo "</pre>";
我该如何用php写出来?很抱歉,如果其bleek和/或数组结构不正确,则只需重复使用
数组
初始值设定项即可
如果要在PHP中使用一些值(例如1到4)初始化数组,可以进行如下调用:
$foo = array('key' => 'value', 'other key' => 'other value');
$foo = array(
'Place A' => array(
// note use of first array on the next line is
// to generate structure like [0] => 'Accomodation' => ...
array('Accomodation' => array(
'RoomId' => '001',
'RoomAvail' => true,
'Date' => '12.04.2011')
)),
array('Accomodation' => array(
'RoomId' => '002',
'RoomAvail' => true,
'Date' => '12.04.2011')
))
),
'Place B' => array(
array('Accomodation' => array(
'RoomId' => '101',
'RoomAvail' => true,
'Date' => '12.04.2011')
)),
array('Accomodation' => array(
'RoomId' => '102',
'RoomAvail' => true,
'Date' => '12.04.2011')
))
)
);
如果要创建一个关联数组,在其中存储一些键/值对,则可以进行如下调用:
$foo = array('key' => 'value', 'other key' => 'other value');
$foo = array(
'Place A' => array(
// note use of first array on the next line is
// to generate structure like [0] => 'Accomodation' => ...
array('Accomodation' => array(
'RoomId' => '001',
'RoomAvail' => true,
'Date' => '12.04.2011')
)),
array('Accomodation' => array(
'RoomId' => '002',
'RoomAvail' => true,
'Date' => '12.04.2011')
))
),
'Place B' => array(
array('Accomodation' => array(
'RoomId' => '101',
'RoomAvail' => true,
'Date' => '12.04.2011')
)),
array('Accomodation' => array(
'RoomId' => '102',
'RoomAvail' => true,
'Date' => '12.04.2011')
))
)
);
但您当然可以嵌套调用,并混合和匹配关联数组和非关联数组的层,以实现与您的示例类似的效果,例如:
foreach($soapResponse as $key1 => $value1){
foreach($value as $key2 => $value2){
// $key1 = Place A or B
// value1 = array of values
$arrayResponse[$key1][$key2] = $value2;
}
}
这将非常接近于产生您所寻找的内容,为了让它完全复制您所拥有的内容,您可以使用
数组将每个'Place A'
包装起来,每个“Place”都会得到自己对某个变量的赋值$foo
(我假设这实际上不是您想要的,并编写了一些可能更直观的东西).如果你想要一个“不那么复杂”的数组,你有两个数组,一个前置a,一个前置b,然后使用array_merge()合并它们
研究手册中的阵列功能和控制结构。实现臃肿数组的许多不同方法都会破坏代码。这将动态创建一个数组
您希望放入数组的数据是什么样子的?执行var\u转储(soap\u响应);要查看数据,我很乐意,但它超过15000行。我会抓住一个片段。但答案如下所示:谢谢这就是我想要的。我只是不知道如何重复地向数组添加内容。当我试图给每个位置一个数字数组id时,我不断得到非法偏移和其他偏移错误。第一个阵列是mahoosive,数据遍布整个商店。我试着把它设置成一个数组,我可以把它保存在内存中,然后去掉那个大数组。