您好我一直在尝试通过php加载xml,但是从我的vps错误日志中我总是出错。
PHP警告:为foreach()提供的参数无效试图获取 非对象的属性
到目前为止,这是我创造的
/**
* WeatherSpecials
*
* @ORM\Table(name="weather_specials")
* @ORM\Entity(repositoryClass="AppBundle\Entity\WeatherSpecialsRepository")
* @ORM\HasLifecycleCallbacks
*/
class WeatherSpecials
{
// other stuff
/**
* @ORM\PrePersist
*/
public function prePersist(\Doctrine\ORM\Event\LifecycleEventArgs $event)
{
$this->df_date = new DateTime();
}
/**
* @ORM\PreUpdate
*/
public function preUpdate(\Doctrine\ORM\Event\LifecycleEventArgs $event)
{
$this->df_date = new DateTime();
}
}
的test.xml
xml.php
<?php
$url = "test.xml";
$ch = curl_init();
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec ($ch);
curl_close($ch);
$xml = simplexml_load_string($data);
$con = mysql_connect("localhost","root","mypassw0rd");
mysql_select_db("test_xml",$con) or die(mysql_error());
foreach($xml -> item as $row){
$title = $row -> title;
$destination = $row -> destination;
$price = $row -> price;
mysql_query("INSERT INTO `tblxml` VALUES('NULL','$title','$destination','$price')") or die(mysql_error());
}
?>
表格结构
<item>
<title>
title 1
</title>
<destination>
destination 1
</destination>
<price>
price 1
</price>
</item>
xml和php都在同一个文件夹中。
任何帮助都会表示赞赏。
答案 0 :(得分:0)
再次阅读你的问题后,确实有一些严重的缺陷。
mysqli_
函数,PDO
和绑定curl
在本地获取XML文件的目的是什么?NULL
值(尽管它会起作用)。这是INSERT
中MySQL
查询的框架:INSERT INTO `table` (`field1`, ..., `fieldx`) VALUES('$value1', ... '$valuex');