相关疑难解决方法(0)

如何通过前缀分隔php数组项

当 PHP 数组有共同前缀时,我想将它们分开。

$data = ['status.1', 'status.2', 'status.3',
         'country.244', 'country.24', 'country.845',
         'pm.4', 'pm.9', 'pm.6'];
Run Code Online (Sandbox Code Playgroud)

我希望它们每个都在单独的变量中,例如$status, $countries, $pms将包含:

$status = [1,2,3];
$country = [244, 24, 845]
$pms = [4,9,6]
Run Code Online (Sandbox Code Playgroud)

我当前的代码需要 1.5 秒才能对它们进行分组:

$statuses = [];
$countries = [];
$pms = [];
$start = microtime(true);
foreach($data as $item){
    if(strpos($item, 'status.') !== false){
        $statuses[]= substr($item,7);
    }

    if(strpos($item, 'country.') !== false){
        $countries[]= substr($item,8);
    }

    if(strpos($item, 'pm.') !== false){
        $pms[]= substr($item,3);
    }
}
$time_elapsed_secs = microtime(true) - $start;
print_r($time_elapsed_secs);
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更快的方法来做到这一点

php arrays

3
推荐指数
1
解决办法
758
查看次数

标签 统计

arrays ×1

php ×1