Функция php str_replace () не работает с запятой внутри строки

Я пытаюсь заменить текст внутри строки, но если я вставлю запятую в тексте, не работает.

Пример:
У меня есть следующая строка в переменной $ postinfo_meta: Android, iOS, Блог, Apple

Я хочу удалить блог, поэтому результат будет Android, iOS, Apple

Я пытаюсь сделать это с помощью:

$postinfo_meta = str_replace("Blog, ", "", $postinfo_meta);

Но это не работает. Если я поставлю

$postinfo_meta = str_replace("Blog", "", $postinfo_meta);

без запятой это работает, но результат Android, iOS, Apple

Любая идея?

Вот полный код функции с исправлением @Goleztrol (все еще не работает):

global $themename;

$postinfo_meta = '';

if ( in_array( 'author', $postinfo ) ){
$postinfo_meta .= ' ' . esc_html__('por',$themename) . ' ' . et_get_the_author_posts_link();
}

if ( in_array( 'date', $postinfo ) )
$postinfo_meta .= ' ' . esc_html__('en',$themename) . ' ' . get_the_time( $date_format );

if ( in_array( 'categories', $postinfo ) )
$postinfo_meta .= ' ' . esc_html__('en',$themename) . ' ' . get_the_category_list(', ');

if ( in_array( 'comments', $postinfo ) )
$postinfo_meta .= ' | ' . et_get_comments_popup_link( $comment_zero, $comment_one, $comment_more );

if ( '' != $postinfo_meta ) $postinfo_meta = __('Publicado',$themename) . ' ' . $postinfo_meta;

$items = array_map('trim', explode(',', $postinfo_meta));

// Filter Blog from the array. A callback function like this is very flexible,
// and you can even 'use' variables from the outer scope.
$items = array_filter($items, function($item){return $item != 'Blog';});

print("<pre>".print_r($items,true)."</pre>");

// Concat the items back together. Add the space again, if you like that.
$postinfo_meta = implode($items, ', ');

echo $postinfo_meta;

-2

Решение

Простите, но когда я попробую следующее:

$postinfo_meta = "Android, iOS, Blog, Apple";
$postinfo_meta = str_replace("Blog, ", "", $postinfo_meta);
echo $postinfo_meta;

Работает нормально, вывод «Android, iOS, Apple» не то, что вам нужно?

1

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

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

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