m0pfin
@m0pfin

Как сравнить значения в массиве?

Добрый день, подскажите пожалуйста как внедрить формулу в код:

$result = json_decode(file_get_contents('https://api.vk.com/method/wall.get?'. $get_params), TRUE);


$res = $result['response']['items'];

foreach ($res as $value) {
    echo "Текст " . $value['text'] . "<br>";
    echo "Комментариев " . $value['comments']['count'] . "<br>";
    echo "Репосты " . $value['reposts']['count'] . "<br>";
    echo "Просмотры " . $value['views']['count'] . "<br>";
    echo "Лайков " . $value['likes']['count'] . "<br><br>";

    }

    /**
     * Определяем эффективность поста
     */

$efficiency = (($likes - $reposts) + ($reposts * 10))/$views;


Выбираю посты с группы VK по API хочу определить из выбранных постов с большими "Лайками" и "Репостами"
Но не понимаю как применить формулу в конце..
  • Вопрос задан
  • 88 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ошибка в том что php не знает, что такое $likes и т. д. Не объявлена переменная. Как-то так будет правильно, efficiency будет массив с эффективностью поста, если есть имя поста и он уникальный то можно его в качестве ключа:
$result = json_decode(file_get_contents('https://api.vk.com/method/wall.get?'. $get_params), TRUE);


$res = $result['response']['items'];

$efficiency = [];

foreach ($res as $value) {
    echo "Текст " . $value['text'] . "<br>";
    echo "Комментариев " . $value['comments']['count'] . "<br>";
    echo "Репосты " . $value['reposts']['count'] . "<br>";
    echo "Просмотры " . $value['views']['count'] . "<br>";
    echo "Лайков " . $value['likes']['count'] . "<br><br>";

$efficiency[] = (($value['likes']['count'] - $value['reposts']['count']) + ($value['reposts']['count'] * 10))/$value['views']['count'];
   }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы