function formatSongsResult($results) { $songs = array(); foreach ($results as $row) { array_push($songs, formatSongResult($row)); } return $songs; }
$song = formatSongResult($row); array_push($songs, $song); if (count($songs) == 5) { break; } } } //when the singer get no enough songs, add random songs in the database if (count($songs) < 5) { $add_result = $mdb->query("SELECT A.mid, A.serial_id, A.name, A.singer, A.path, A.original_track, A.sound_track, A.start_volume_1, A.start_volume_2, A.lyric, A.prelude,A.match, B.name AS effect, C.name AS version \r\n FROM media A \r\n LEFT JOIN media_effect B ON A.effect = B.id \r\n LEFT JOIN media_version C ON A.version=C.id \r\n WHERE A.enabled=1 AND RAND()<=0.00009 limit 0,10"); foreach ($add_result as $row) { $song = formatSongResult($row); array_push($songs, $song); if (count($songs) == 5) { break; } } } //when the singer get no enough songs, add songs from host list if (count($songs) < 5) { $add_result = $mdb->query("SELECT B.mid, B.serial_id, B.name, B.singer, B.path, B.original_track, B.sound_track, B.start_volume_1, B.start_volume_2, B.lyric, B.prelude,B.match, C.name AS effect, D.name AS version \r\n FROM media_list A \r\n LEFT JOIN media B ON A.mid = B.mid \r\n LEFT JOIN media_effect C ON B.effect = C.id \r\n LEFT JOIN media_version D ON B.version=D.id \r\n WHERE B.enabled = 1 AND A.type=%s", "hot"); foreach ($add_result as $row) { $song = formatSongResult($row); array_push($songs, $song); if (count($songs) == 5) { break; } } } $finalResult = array("songs" => $songs); formatResult($finalResult);
$context = stream_context_create($options); $result = file_get_contents('http://' . PHP_HOST . '/music/songid.php', false, $context); $dic = (array) json_decode(preg_replace('/[^(\\x20-\\x7F)]*/', '', $result), true); $output = (array) $dic['result']; //print_r($dic);exit; if ($output && $output['song']) { $result = array(); $result['mid'] = $output['song']['mmid']; $result['serial_id'] = $output['song']['serialid']; $result['name'] = $output['song']['name']; $result['singer'] = $output['song']['singer']; $result['path'] = $output['song']['path']; $result['original_track'] = null; $result['sound_track'] = null; $result['start_volume_1'] = null; $result['start_volume_2'] = null; $result['match'] = 0; $result['lyric'] = $output['song']['lyric']; $result['prelude'] = $output['song']['prelude']; $result['effect'] = null; $result['version'] = null; $result['singer_id'] = null; } else { echo json_encode(array("result" => null, "status" => false, "error" => "查询内容不存在")); exit; } } $finalResult = array("song" => formatSongResult($result)); echo json_encode(array("result" => $finalResult, "status" => true, "error" => "")); saveLog($GLOBALS['timeStart'], $_SERVER['REQUEST_URI']); unset($GLOBALS['timeStart']);