У меня есть приложение к статье.Обычно у меня нет никакой системы рекомендаций, кроме как получать последние 100 данных из базы данных и рекомендовать их в зависимости от количества подсчетов.Мне интересно, как я могу получить данные в массив и чем сделать некоторые математические вычисления перед выводом.У меня есть идея, но я не смог найти ничего полезного о том, как это сделать в Интернете.
Итак, допустим, у меня есть этот запрос:
$articles = Article::orderBy('id', 'desc')->take(100)->get();
Теперь я хочу сделать следующее:создайте еще один array
размером 100 и разместите каждый идентификатор статьи по одному, но в зависимости от моего алгоритма.
, прежде чем я начну, я хочу дать вам все, что будет использоваться:
$article->likecount
$article->viewcount
$article->user->reputation
$article->category->interest
Я буду использовать эти значения в другом порядке, чтобы переупорядочить последние 100 статей, а затем paginate
их.
Вот что мне нужно:
- Мне нужно получить
$article->likecount
- Добавить
$user->reputation
- Добавить
$category->interest
Result
минус $article->viewcount
И затем положить это значение внутри массива.Массив нужно упорядочить от наименьшего к наибольшему .
Я могу сделать что-то похожее в C или C ++ , но я не знаю достаточно синтаксисачтобы сделать это в raw PHP или Laravel