下面是我的数组输出
[0] => Array
[OrderDetails] => Array
(
[Options] => [Nicotine Level:12mg Nicotine][Sampler Item 1:Krankberry][Sampler Item 2:Unicorn Blood][Sampler Item 3:WaterFelons]
)
)
我想只显示选项字段中的尼古丁水平,选项可能会有所不同,请帮帮我。我有很多选择。
我使用了以下代码
$explode_var = explode('[','[Nicotine Level:12mg Nicotine][Sampler Item 1:Krankberry][Sampler Item 2:Unicorn Blood][Sampler Item 3:WaterFelons]');
echo '<pre>';
print_r($explode_var);
echo '</pre>';
答案 0 :(得分:2)
这是阅读代码注释的一种方法:
<?php
$data = array(array('OrderDetails' => array('Options' => '[Nicotine Level:12mg Nicotine][Sampler Item 1:Krankberry][Sampler Item 2:Unicorn Blood][Sampler Item 3:WaterFelons]')));
$options = $data[0]['OrderDetails']['Options'];
$options = str_replace(']', '', $options);
$old_var = array_filter(explode('[',$options));
$result = array();
foreach ($old_var as $items)
{
$item = explode(':', $items);
$result[$item[0]] = $item[1];
}
foreach ($result as $key=>$value)
{
echo $key, " => ", $value, "<br/>\n";
}