Как я могу удалить первые символы в значениях массива? - PullRequest
0 голосов
/ 06 апреля 2020

Я создаю массив, в котором я хочу удалить некоторые символы:

  foreach ($Array as &$value) {
      $value = substr($value, 7);
  }

Вывод:

array:4 [▼
  0 => "cat"
  1 => "frog"
  2 => "bird"
  3 => & "elephant"
]

Как можно предотвратить, чтобы последний символ имел "&" подписать? Потому что, когда я позже ищу значение через in_array, тогда "elephant" не найден.

1 Ответ

2 голосов
/ 06 апреля 2020

Знак & указывает, что по-прежнему существует ссылка на $Array[3]. Чтобы удалить ссылку, используйте unset.

foreach ($Array as &$value) {
  $value = substr($value, 7);
}

unset($value);

var_dump($Array);

Тот факт, что «слон» не найден, вероятно, вызван использованием в коде $value позже, что меняет $Array[3].

...