簡體   English   中英

last.fm API-隨機/隨機播放foreach循環

[英]last.fm api - random / shuffle foreach loop

我目前正在使用lat.fm api開發一個應用程序。

我有一個函數可以從last.fm組中獲取每周曲目列表。

目的是引入專輯插圖並制作“ gridview”模板。

下面的代碼執行此操作:

public function getWeeklyTrackChartGrid($methodVars) {
        // Check for required variables
        if ( !empty($methodVars['group']) ) {
            $vars = array(
                'method' => 'group.getweeklytrackchart',
                'api_key' => $this->auth->apiKey
            );
            $vars = array_merge($vars, $methodVars);

            if ( $call = $this->apiGetCall($vars) ) {
                $i = 0;


                //shuffle($call->weeklytrackchart->track);

                $loopN = $call->weeklytrackchart->track;


                foreach ($loopN as $track ) {

                    require 'config.php';
                     //if(++$i > $userLimit*2) break;


                     $albumArtS = $tracks['album']['image']['small'] = (string) $track->image[0];
                     $albumArtM = $tracks['album']['image']['small'] = (string) $track->image[1];
                     $albumArtL = $tracks['album']['image']['small'] = (string) $track->image[2];

                     $playCounts = $tracks[$i]['playcount'] = (string) $track->playcount; 

                     ?>


                       <?php if ($playCounts > 1)  { ?>

                       <?php if ($albumArtL)  { ?>

                            <img src="<?php echo $albumArtL; ?>" />

                            <?php } ?>

                       <?php } else { ?>

                       <?php if ($albumArtM)  { ?> 

                            <img src="<?php echo $albumArtM; ?>" />

                            <?php } ?>

                       <?php } ?>



                     <?php if ($albumArtwork == "yes")  { ?>


                        <?php if ($albumArt)  { ?>




                        <?php } }?>



                <?php   $i++;
                }
                return $tracks;
            }
            else {
                return FALSE;
            }
        }
        else {
            // Give a 91 error if incorrect variables are used
            $this->handleError(91, 'You must include a group variable in the call for this method');
            return FALSE;
        }
    }

我想在foreach循環中使用php函數shuffle來隨機化音軌,而不是按last.fm給您的順序拉入它們。

如您所見,我沒有在上面評論隨機播放功能,當我添加此功能時,我收到以下警告:

Warning: shuffle() expects parameter 1 to be array, object given in 

關於可能是什么問題的任何想法?

干杯,丹

$loopN = (array) $call->weeklytrackchart->track;
shuffle($loopN);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM