仅为怀念jobs
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?phpheader ('Content-type:text/html; charset=utf-8');$template = '{youku id_XMTc5ODgwOTA4}{youku id_XMzA5NTUwOTky}{youku id_XMzEwMTQyMjA4}{youku id_XMjYzNTE0MTA4}{youku id_XMzEwNDMwODk2}{youku id_XMjk4NjA3Njk2}{youku id_XMjQ3ODQwNDYw}{youku id_XMjk4MjA2NDI0}{youku id_XMzEwNDIyMTY4}{youku id_XMzA5ODUzMjI4}{youku id_XMzEwMzMxNjc2}{youku id_XMzEwMTk4Njky}{youku id_XMTA3OTA4MzQw}{youku id_XMjQ1NzI1ODcy}{youku id_XMjI4Mzc0OTY0}';$cfgYouku = array( array("rege"=>"/\s*\{youku\s*id_(.*)}\s*/i","callback"=>"compile")); foreach ($cfgYouku as $val){ if(isset($val["callback"])) { $template = preg_replace_callback($val["rege"], $val["callback"], $template); } } /** * * forjobs * @param unknown_type $matched */function compile($matched){ $url = $matched[0]; preg_match("/id\_(\w+)/", $url, $matches); if (empty($matches)){ preg_match("#v_playlist\/#", $url, $mat); if(!$mat) return false; $html = self::_fget($url); preg_match("#videoId2\s*=\s*\'(\w+)\'#", $html, $matches); if(!$matches) return false; } $link = "http://v.youku.com/player/getPlayList/VideoIDS/{$matches[1]}/timezone/+08/version/5/source/out?password=&ran=2513&n=3"; $retval = fileGetContent( $link ); if ($retval) { $json = json_decode($retval, true); $data['img'] = $json['data'][0]['logo']; $data['title'] = $json['data'][0]['title']; $data['url'] = $url; $data['swf'] = "http://player.youku.com/player.php/sid/{$matches[1]}/v.swf"; if( $data ) $data['object'] = "<h2>".$data['title']."</h2>"."<embed src="%5C%22%7B%24data%5B'swf'%5D%7D%5C%22" quality='\"high\"' width='\"480\"' height='\"400\"' align='\"middle\"' allownetworking='\"all\"' allowscriptaccess='\"always\"' type='\"application/x-shockwave-flash\"'></embed>"; return $data['object']; } else { return false; }}/** * * @author murain * @param String $url */function fileGetContent($url){ $ch = curl_init(); $timeout = 10; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $contents = trim(curl_exec($ch)); curl_close($ch); return $contents;}