PHP: обрезать, чтобы избавиться от пустого диапазона

Ссылаясь на этот комментарий.

$values = array("foo","bar");

var_dump($value) результаты в:

array (size=2)
0 => string 'foo' (length=3)
1 => string 'bar' (length=3)

Implode:

$value = "<span>".implode('</span>,<span>', $values)."</span>";

Сейчас var_dump($value) результаты в:

string '<span>foo</span>,<span>bar</span>' (length=33)

Отделка:

$value = trim($value,"<span></span>");

Сейчас var_dump($value) результаты в:

string 'foo</span>,<span>bar' (length=20)

Но это все равно должно привести к:

string '<span>foo</span>,<span>bar</span>' (length=33)

-2

Решение

trim Функция работает на уровне символов, а не на уровне текста или тега HTML.

Когда вы делаете trim($value, "<span></span>") вы просите PHP удалить все начальные и конечные символы, которые появляются в тексте <span></span>, Это имеет тот же результат, что и trim($value, "/<>anps")

Вы, вероятно, должны использовать str_replaceвместо.

Альтернативно, используйте array_filter удалить пустые записи в массиве до вы implode их.
Например:

$str = implode("</span>,<span>", array_filter($values, 'strlen'));
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]