PHP哪种音乐最受欢迎(比较字符串)

时间:2014-03-15 11:42:46

标签: php

嘿伙计们试图找到一种更有效的方法来做到以下几点。 我在我的网站上跟踪用户的视频历史记录,我在这个网站上有多个视频,所有视频都有类似的类型&#39 ;;摇滚,流行音乐,声学,替代等等。

我正在做的是抓住用户观看的最后六个视频(取决于他们是否观看了六个视频)并找到与该视频相关的类型。一旦我有六种类型;

E.g

$Genre1 = "Pop"; //The last video watched
$Genre2 = "Rock"; //The second last video watched
$Genre3 = "Rock"; // ect ect
$Genre4 = "Alternative";
$Genre5 = "Rock";
$Genre5 = "Rock";

Rock是这些结果中最受欢迎的流派类型,我想知道是否有办法找出哪种流派很受欢迎。

3 个答案:

答案 0 :(得分:0)

从所有这些字符串中组合一个数组,例如:

$genres = array('pop', 'rock', 'rock', 'alt', 'rock', 'rock');

而不是使用array_count_values($genres)功能。

答案 1 :(得分:0)

试试这个:

$Genre[] = "Pop"; //The last video watched
$Genre[] = "Rock"; //The second last video watched
$Genre[] = "Rock"; // ect ect
$Genre[] = "Alternative";
$Genre[] = "Rock";
$Genre[] = "Rock";

$popular = array_count_values($Genre);
$popular = rsort($popular);
foreach ($popular as $pop) {
    $most_pop = $pop;
    break;
}

echo $pop;

答案 2 :(得分:0)

每当你有同样的事情有多个变量时,你应该把它看作是使用某种形式的数组的线索。然后,您可以查看PHP手册,了解有用的数组函数以处理您的数据。

在这种情况下,一个有用的技巧是将你的类型作为关联数组的,其值用于计算该类型的出现次数,如下所示:

array(
    'Rock'  => 2,
    'Jazz'  => 1,
    'Blues' => 3
)

您可以使用$scoreboard[$genre]++之类的代码循环构建(其中$scoreboard是您正在构建的数组)。

完成后,您可以使用sort()按分数顺序排列。

我会让你提出自己的解决方案,而不是为你编写所有代码,但希望这能告诉你如何解决这个问题。