删除foreach循环中的数组元素

Flo*_*ică 7 php

我有一个简单的数组,其中包含所有国家/地区的名称以及每个国家/地区在我的网站上注册的用户总数.它是这样的:

Array (
    [1] => Array ( [name] => Afghanistan [total] => 3 )
    [2] => Array ( [name] => Albania [total] => 0 )
)
Run Code Online (Sandbox Code Playgroud)

而且,我正在尝试删除拥有0个用户的数组元素(国家/地区).

我已尝试使用此代码,但它不起作用:

foreach($country as $row) {
    if ($row['total'] == 0) {
        unset($row);
    }
}
Run Code Online (Sandbox Code Playgroud)

这段代码有什么问题?

Nik*_*kiC 27

如果您unset($row)只是删除局部变量.

而是获取密钥并删除它:

foreach ($country as $i => $row) {
    if ($row['total'] == 0) {
        unset($country[$i]);
    }
}
Run Code Online (Sandbox Code Playgroud)