Сравнить два массива Laravel

У меня есть статьи, которые могут содержать разные теги. Например 5 штук: (php, html, css, laravel, js) А у меня есть группы, которые тоже могут содержать разные теги. Например 4 штуки: (laravel, php, html, css)

Я уже определил отношения, и это работает. Чего мне еще не хватает, так это привязки статьи к группе.

В Articlecontroller я использую это для синхронизации:

$article->groups()->sync($group->id);

Модель статьи

  public function groups()
  {
    return $this->belongsToMany('App\Group');
  }

    public function tags()
    {
        return $this->morphToMany('App\Tag', 'taggable');
    }

Модель тега

public function articles()
{
    return $this->morphedByMany('App\Article', 'taggable');
}

public function groups()
{
    return $this->morphedByMany('App\Group', 'taggable');
}

Групповая модель

public function tags()
{
    return $this->morphToMany('App\Tag', 'taggable');
}

public function articles()
{
    return $this->belongsToMany('App\Article');
}

Контроллер

$groups = $user->groups()->latest()->with('tags')->paginate(20);
$mostvotedarticle = Article::where('type', 4)->whereIn('privacy', [1, 3])->orderByVotes()->first(); //show only article with the same tags
$imagearticle = Article::with('comments')->whereIn('type', [4, 5])->where('status', 1)->latest()->paginate(30); //show only articles with the same tags

Теперь я хотел бы сравнить теги групп и теги сообщений. Если сообщения имеют те же теги, что и группа, я хочу отображать сообщения.

когда вы говорите посты, вы имеете в виду статьи?

wheelmaker 15.09.2018 23:26

В таблице с тегами

slickness 15.09.2018 23:30
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
0
2
984
1

Ответы 1

просто проверьте на равенство

$equal = ($tagsFromPost == $tagsFromGroup) //TRUE if both have the same values but NOT in order
$equal = ($tagsFromPost === $tagsFromGroup) //TRUE if both have same values in SAME order

тогда что-то вроде

if ($equal){
    <statements>
}

для проверки на ЛОЖНЫЙ if (!$equal)...

как я могу загрузить подходящую статью с вашим кодом?

slickness 16.09.2018 08:24

Другие вопросы по теме