PHP将文件内容从url写入本地文件
我正在尝试从网站获取xml文件并将其放入本地空xml文件(myxml.xml
)中。我的代码是返回一个空文件。PHP将文件内容从url写入本地文件
我们的目标是从http://website.com/theirxml.xml
中获取xml文件内容并将其放入myxml.xml
。
要注意,我这样做的唯一原因是因为我的主机网站上的xml格式不正确,所以我需要在我自己的本地版本上更改它。因此,我需要的是从文件中获取字符串。
<?php
$myfile = fopen("myxml.xml", "w") or die("Unable to open file!");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://website.com/theirxml.xml");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
fwrite($myfile, $output);
fclose($myfile);
?>
很简单:
file_put_contents('myxml.xml', file_get_contents('http://website.com/theirxml.xml');
THX到陈以桐为这个技巧:你需要在你的php.ini激活allow_url_fopen
。
你的方式唯一的问题是,我得到一个'拒绝连接'错误。 –
@JasonChen你检查了你的phpinfo以确保'allow_url_fopen'被启用? – Trojan404
您可以使用“simplexml_load_file”函数从XML中获取数据。
$url="http://website.com/theirxml.xml";
$xml = simplexml_load_file($url);
file_put_contents('myxml.xml',$xml);
而你的问题是? –
我没有得到任何回应,也没有错误陈述。 –
无论你的方式或@ colbuton的方式(我更喜欢)使用'error_reporting(E_ALL); ini_set('display_errors','1');' – AbraCadaver