Вывод определенных тегов ( слов ) из множества разных тегов

W
На сайте с 14.02.2016
Offline
44
85

Всем привет! как мне вывести определенные слова из тегов

код

<?php
                if(count($yt->keywords) > 0) {
                        foreach ($yt->keywords as $value) {
                                echo '<a href="'.$this->config["url"].'/tags/'.str_replace('#', '', str_replace (' ', '+', $value)).'">'.$value.'</a>';
                        }
                                }
  ?>

Выводит такое облако тегов

Задача мне надо вывести теги в которых присуствует слово "авто" и "машины"

Как реализовать такое?

спасибо жду ответа


Алеандр
На сайте с 08.12.2010
Offline
183
#1
wilsden :
Задача мне надо вывести теги в которых присуствует слово "авто" и "машины"

Конструкция if (preg_match.. или if (mb_stristr.., например.

if (mb_stristr($value,'авто','utf-8') || mb_stristr($value,'машины','utf-8')) { echo '<a href="' ... }

Код по памяти, не проверял. Если что - проверьте правильность и допишите. Могут быть вариации с точкой вхождения поиска, чтобы слово было именно отдельным и т.д.

W
На сайте с 14.02.2016
Offline
44
#2
Алеандр #:
mb_stristr

Спасибо работает только с 1 ключем где машины а вот авто не выводит.

Погуглю посмотрю что можно сделать а так спасибо

Алеандр
На сайте с 08.12.2010
Offline
183
#3
wilsden #:

Спасибо работает только с 1 ключем где машины а вот авто не выводит.

Добавьте строгую проверку, вместо упрощенной.

if (mb_stristr($value,'авто',1,'utf-8')!==false || mb_stristr($value,'машины',1,'utf-8')!==false) { echo $value." / "; }

Так должно выводить вне зависимости от того, в каком месте встречается вхождение в теге.

W
На сайте с 14.02.2016
Offline
44
#4
Алеандр #:
if (mb_stristr($value,'авто',1,'utf-8')!==false || mb_stristr($value,'машины',1,'utf-8')!==false) {

Спасибо прям идеальное решение!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий