2015-04-02 110 views
-2

鉴于这样的数组在PHP中:我如何走一个数组并将每个元素分开?

array('aaa_BC98E90D8ADA0', 
     'aab_KD9098DF90F', 

     ... 

     'd5d_KDO90290393', 
     'nnn_OPDOE82993KD', 
     'kbh_Doodie0DDK', 
     ... 
    ); 

我怎么可以拆分围绕“_”每个条目,并采取右手令牌和分配每到一个独特的变量?

$aaa = 'BC98E90D8ADA0'; 

$aab = 'KD9098DF90F'; 

... 

$d5d = 'KDO90290393'; 

$nnn = 'OPDOE82993KD'; 

$kbh = 'Doodie0DDK'; 

... 

回答

1
$array_to_split = array(
    'aaa_BC98E90D8ADA0', 
    'aab_KD9098DF90F', 
    'd5d_KDO90290393', 
    'nnn_OPDOE82993KD', 
    'kbh_Doodie0DDK', 
); 

foreach($array_to_split as $val) { 
    $var = explode($val); 
    $$var[0] = $var[1]; 
} 

这应该动态地设置变量名称以及它的关键,但是我宁愿做这种方式。

$new_array = array(); 
foreach($array_to_split as $val) { 
    $new_array[] = explode('_', $val); 
} 

echo $new_array['aaa']; // output, BC98E90D8ADA0 
1

下面是一个例子:

<?php 
$array_to_split = array(
    'aaa_BC98E90D8ADA0', 
    'aab_KD9098DF90F', 
    'd5d_KDO90290393', 
    'nnn_OPDOE82993KD', 
    'kbh_Doodie0DDK', 
); 
foreach ($array_to_split as $value) { 
    $temp = explode('_', $value); 
    if(count($temp)==2){ 
     list($key,$val) = $temp; 
     $$key = $val; 
    } 
} 
echo $aaa; //BC98E90D8ADA0 
?> 
相关问题