PHP注意:未定义索引:url

PHP注意:未定义索引:url,php,Php,我为什么会犯这个错误 PHP Notice: Undefined index: url on line 40 从我的代码中,该代码用于从网站获取电影链接,但当我试图获取链接时,我得到了错误,因此有人可以为我指出解决问题的正确方向 public function getMovieEmbeds($title) { $misc = new Misc(); //Step1 find key $movie_url = null; $html = file_get_ht

我为什么会犯这个错误

PHP Notice:  Undefined index: url on line 40
从我的代码中,该代码用于从网站获取电影链接,但当我试图获取链接时,我得到了错误,因此有人可以为我指出解决问题的正确方向

public function getMovieEmbeds($title) {
    $misc = new Misc(); 
    //Step1 find key
    $movie_url = null;
    $html = file_get_html('http://www.primewire.ag/');
    $elements = $html->find('input[name=key]',0);
    $key = null;
    if(!is_null($elements)){
        $key = $elements->value;
    }
    if(is_null($key)){
        return array();
    }

    //Step2 do search...
    $search = urlencode($title);                
    $html = file_get_html("http://www.primewire.ag/index.php?search_keywords=$search&key=$key&search_section=1");
    $elements = $html->find(".index_item h2");
    if(!is_null($elements)){
        foreach($elements as $element){
            $element_title = strtolower(strip_tags(trim(preg_replace('/\s*\([^)]*\)/', '', $element->innertext))));                 
            if ($element_title == strtolower(trim($title))) {
                $parent = $element->parent();
                $movie_url = "http://primewire.ag".$parent->href;
                break;
            }
        } 
    }
    if (is_null($movie_url)) { 
        return array();
    }

    //Step3 get embeds
    $html = file_get_html($movie_url);
    $elements = $html->find(".movie_version_link a");
    if(!is_null($elements)){
        foreach($elements as $element){
            $encoded_url = "http://primewire.ag".$element->href;
            $query = parse_url($encoded_url, PHP_URL_QUERY);
            parse_str($query,$op);
            error came from ---> $link = base64_decode($op["url"]); <--- here

            if(strpos($link, "affbuzzads")===false && strpos($link, "webtrackerplus")===false){
                $embed = $misc->buildEmbed($link);
                if ($embed) {
                    $embeds[] = array(
                        "embed" => $embed,
                        "link" => $link,
                        "language" => "ENG",
                    );
                }
            }
        }
        return $embeds;
    }
    return array(); 
}
公共函数GetMovieEmbeddes($title){
$misc=新的misc();
//步骤1查找密钥
$movie_url=null;
$html=file\u get\u html('http://www.primewire.ag/');
$elements=$html->find('input[name=key]',0);
$key=null;
如果(!为null($elements)){
$key=$elements->value;
}
如果(为空($key)){
返回数组();
}
//第二步做搜索。。。
$search=urlencode($title);
$html=文件\u获取\u html(“http://www.primewire.ag/index.php?search_keywords=$search&key=$key&search_section=1“;
$elements=$html->find(“.index_item h2”);
如果(!为null($elements)){
foreach($elements作为$element){
$element\u title=strtolower(strip\u标签(trim(preg\u replace('/\s*\([^)]*\)/',''$element->innertext)));
如果($element_title==strtolower(修剪($title))){
$parent=$element->parent();
$movie_url=”http://primewire.ag“$parent->href;
打破
}
} 
}
如果(为空($movie_url)){
返回数组();
}
//步骤3获取嵌入
$html=file\u get\u html($movie\u url);
$elements=$html->find(“.movie\u version\u link a”);
如果(!为null($elements)){
foreach($elements作为$element){
$encoded_url=”http://primewire.ag“$element->href;
$query=parse\u url($encoded\u url,PHP\u url\u query);
parse_str($query,$op);
错误来自-->$link=base64_解码($op[“url”]);buildEmbed($link);
如果($embed){
$embeds[]=数组(
“嵌入”=>$embed,
“link”=>$link,
“语言”=>“英语”,
);
}
}
}
返回$embeds;
}
返回数组();
}

有人能帮我一下吗?这将非常有帮助。

parse\u str在URL上返回一个参数数组,就好像它在$\u GET数组中一样

仅当您使用的url具有参数“url”时,它才会包含“url”值

例如,它是沿着以下路线进行的:

http://example.com/?url=urlvalue
因此,如果$element->href(因此$encoded_url和$query)中不包含名为“url”的参数,则无法在“url”的$op数组中获得索引


请参阅此处的文档:

du已完成var_转储($op),并查看是否有索引名和url?如果您不知道这些网站在英国已被阻止