$str = '1000,10.00,10000.00@500,5.00,2500.0';
$ex = explode('@',$str);
//result = Array ( [0] => 1000,10.00,10000.00 [1] => 500,5.00,2500.00 );
$ex2 = explode(',',$ex);
//result need Array ( [0] => 1000, [1] => 500, [2] => 2500);
2 回答
1
您可以使用此方法:
<?php
$str = '1000,10.00,10000.00@500,5.00,2500.0';
$arrayResult = [];
$arrayData = explode('@',$str);
foreach($arrayData as $sing){
$arrayResult[] = explode(",",$sing);
}
echo "<pre>";
print_r($arrayResult);
echo "</pre>";
于 2020-06-08T09:49:26.933 回答
0
explode()返回一个数组,因此$ex将是一个需要迭代/foreach 的数组:
<?php
// Init array to hold exploded values
$exploded = [];
$str = '1000,10.00,10000.00@500,5.00,2500.0';
$ex = explode('@',$str);
// Iterate over the $ex-exploded items
foreach ( $ex as $exItem ) {
// Add items to the $exploded array
array_push($exploded, explode(',', $exItem));
}
print_r($exploded);
将输出
Array
(
[0] => Array
(
[0] => 1000
[1] => 10.00
[2] => 10000.00
)
[1] => Array
(
[0] => 500
[1] => 5.00
[2] => 2500.0
)
)
编辑: 如果你想要一个数组中的所有值,你可以
$exploded = array_merge($exploded[0], $exploded[1]);
print_r($exploded);
这将输出
Array
(
[0] => 1000
[1] => 10.00
[2] => 10000.00
[3] => 500
[4] => 5.00
[5] => 2500.0
)
于 2020-06-08T09:43:19.253 回答
