php file_get_contents来自不同的URL(如果第一个URL不可用)


php file_get_contents from different URL if first one not available

我有以下代码来读取一个XML文件,该文件在URL可用时运行良好:

$url = 'http://www1.blahblah.com'."param1"."param2";
$xml = file_get_contents($url);
$obj = SimpleXML_Load_String($xml);

如果第一个URL由于任何原因不可用,我如何更改上面的代码以循环使用多个不同的URL?我有一个4个URL的列表,所有URL都包含同一个文件,但我不确定如何处理。

将您的代码替换为例如这个

//instead of simple variable use an array with links
$urls = [   'http://www1.blahblah.com'."param1"."param2",
            'http://www1.anotherblahblah.com'."param1"."param2",
            'http://www1.andanotherblahblah.com'."param1"."param2",
            'http://www1.andthelastblahblah.com'."param1"."param2"];
//for all your links try to get a content
foreach ($urls as $url) {
    $xml = file_get_contents($url);
    //do your things if content was read without failure and break the loop
    if ($xml !== false) {
        $obj = SimpleXML_Load_String($xml);
        break;
    }
}