@redd_i

Почему не работает inplode()?

Доброй ночи. Ошибка
Warning: implode() [function.implode]: Invalid arguments passed in
Код:
$string = "$bbover[category]";
			$overcatff = explode(", ", $string);
			for ($overiq = 0; $overiq <= count($overcatff); $overiq++) 
			{
			if($overcatff[$overiq]==$delcatun) {
			unset($overcatff[$overiq]);
			}
			$overcatnn = implode(", ", $overcarff);

Тут я в переменной $string получаю список категорий через запятую. (Fasion, Editori, Video)
В переменной $overcatff преобразую это в массив.
Далее через цикл проверяю категории. Если какое то значение массива совпадает с текущей ($delcatun) то мы удаляем это значение с массива.
После чего в переменную $overcatnn записываю все значения обратно через запятую.
Собственно ошибка в строке: $overcatnn = implode(", ", $overcarff);
Заранее благодарю за помощь
  • Вопрос задан
  • 413 просмотров
Решения вопроса 2
@Sayonji
Опечатка: $overcatff $overcarff

Поэтому нужно в настройках php включать предупреждения обо всех ошибках, в том числе E_NOTICE, пока ведется разработка. Тогда вы бы сразу увидели, что переменная не существует.
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А чем вам нативная array_diff не подходит? Зачем изобретать велосипед?
$overcatff = explode(", ", $bbover['category']);
$overcatff = array_diff($overcatff, [$delcatun]);
$overcatnn = implode(", ", $overcarff);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SymbioWay Москва
от 120 000 до 180 000 ₽
АКМЭ сервис Санкт-Петербург
от 120 000 до 150 000 ₽
РосТендер Москва
от 130 000 до 150 000 ₽
14 авг. 2020, в 13:46
2000 руб./за проект
14 авг. 2020, в 13:35
20000 руб./за проект