59516,?O?L?h,27,80,67,13,1,84.6,40,4,1,32632,??,3,5,32640,AES,3,5,32210,\
???i?Z??,1,1.2,32263,?,1,1.2,3?T,1,1.2,32104,,1,1,40012,??,1,0.8
我如何爆炸/列出此行并拉出包含五个字符数字的任何字段以及紧接其前面的字段?
即。 $data['59516']['i']
将包含一个带
(32632=>1, 32640=>5, 32210=>5, 32263=>1.2,32104=>2, 40012=>1)
答案 0 :(得分:1)
我不确定我是否完全理解你的问题,但听起来你想要的是:
$items = str_getcsv($commaSeparatedList);
for ($i = 0; $i < count($items); $i++) {
if (strlen($items[$i]) == 5 && is_numeric($items[$i])) {
var_dump($items[$i]); // current match
if (isset($items[$i-1])) {
var_dump($items[$i-1]); // item and one before it
}
}
}
答案 1 :(得分:0)
(?<=,)(\d+),(\d{5})
$matches[1]
有值,$matches[2]
有你的密钥。