Сброс значений многомерного массива в цикле foreach - PullRequest
0 голосов
/ 02 июля 2011

Я получил многомерный массив объектов, которые в некоторых случаях необходимо «фильтровать». Это функция, которую я написал:

foreach($data["index"] as $key => $value){
    if(preg_match("/EXPRESSION/",$value->property)){
        unset($data["index"][$key]);
    }
}

Это не возвращает мне никаких ошибок, но когда массив var_dumped, значения, которые я думал, что я установил, все еще там.

Я нашел это в другой теме:

foreach ($this->result['list'] as $key => &$row) {
    if ($this_row_is_boring) {
        unset($this->result['list'][$key]);
    }
}

Я думаю, что единственное отличие от того, что я написал, заключается в том, что он вызывает $ this-> result, когда я вызываю $ data.

Есть идеи? спасибо

1 Ответ

0 голосов
/ 02 июля 2011

Если регулярное выражение не соответствует, unset() никогда не будет вызвано.

Можете ли вы вставить оператор, чтобы определить, возвращает ли preg_match() значение true?

...