Я получаю идентификатор типа $id=2 в переменной
нравиться: $ count_id = $ request-> get ('count_id');
и из функции я получаю array, как показано ниже:
например: $ results = get_experiance ();
[0] => stdClass Object
(
[id] => 1
[A] => a
[B] => b
[C] => c
[D] => d
)
[1] => stdClass Object
(
[id] => 2
[A] => w
[B] => s
[C] => d
[D] => a
)
[2] => stdClass Object
(
[id] => 3
[A] => r
[B] => e
[C] => f
[D] => v
)
Мой вопрос в том, что когда я получаю значение в $id=2, результат должен быть таким:
[0] => stdClass Object
(
[id] => 1
[A] => a
[B] => b
[C] => c
[D] => d
)
[1] => stdClass Object
(
[id] => 3
[A] => r
[B] => e
[C] => f
[D] => v
)
Означает, что я хочу удалить запись из получаемого массива на основе идентификатора. Как я могу этого добиться, может у кого-нибудь есть самый простой способ?
Измените функцию, чтобы использовать значения поля id в качестве ключей в массиве, который она возвращает. После этого это просто для достижения своей цели.
простого foreach и if должно хватить, если есть, просто используйте unset






Вы можете сделать что-то вроде:
unset ($ array [$ id]);
$array - основная переменная, в которой все элементы массива содержат
$id - это индекс
Как это отвечает на вопрос?
Вопрос обновлен. В то время было сказано, что наличие переменной содержит Index. Теперь обновлено, что получение идентификатора в цикле и т.д. и т.д. В любом случае мой плохой
Вы можете использовать array_filter. Вы также можете использовать array_values, если не хотите сохранять существующие ключи.
$arr = your array
$toRemove = "2";
$result = array_filter($arr, function($o) use ($toRemove){
return $toRemove != $o->id;
});
echo "<pre>";
print_r( $result );
echo "</pre>";
Это вернет:
Array
(
[0] => stdClass Object
(
[id] => 1
[A] => a
[B] => b
[C] => c
[D] => d
)
[2] => stdClass Object
(
[id] => 3
[A] => r
[B] => e
[C] => f
[D] => v
)
)
Если вам не нужна новая переменная, вы можете просто переопределить массив как
$arr = array_filter($arr, function($o) use ($toRemove){
return $toRemove != $o->id;
});
просто отключите этот ключ, например, имя вашего массива - $ arr, а ваш ключ - 2, который находится в $ key, затем напишите unset ($ arr [$ key])