PHP 利用simplexml_load_file 读取XML对应的字段 然后存入mysql数据库

本文介绍了海口观澜湖华谊冯小刚电影公社南洋街的盛大开街仪式,以及万圣节期间在观澜湖举办的特色活动,包括一系列的游玩攻略和变身‘整鬼专家’的体验。文章提供了丰富的图片资源,让读者能够直观感受到现场的氛围。
<?xml version="1.0" encoding="UTF-8"?>
<root>
    <news id="1" year="2015">
        <title>海口观澜湖华谊冯小刚电影公社南洋街盛大开街</title>
        <thumbnail>/news/2015/news-12-23_2.jpg</thumbnail>
        <images>
            <image>
                <source>/news/2015/news-12-23.jpg</source>
            </image>
            <image>
                <source>/news/2015/news-12-23_2.jpg</source>
            </image>
            <image>
                <source>/news/2015/news-12-23_3.jpg</source>
            </image>
            <image>
                <source>/news/2015/news-12-23_1.jpg</source>
            </image>
            <image>
                <source>/news/2015/news-12-23_4.jpg</source>
            </image>
        </images>

    </news>
    <news id="2" year="2015">
        <title>万圣节游玩攻略:深入观澜湖  变身“整鬼专家”</title>
        <thumbnail>/news/2015/1.png</thumbnail>
        <images>
            <image>
                <source>/news/2015/1.1.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.2.png</source>
            </image>
            <image>
                <source>/news/2015/1.3.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.4.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.5.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.6.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.7.jpg</source>
            </image>
            <image>
                <source>/news/2015/1.8.png</source>
            </image>

        </images>
    </news>

</root>

 总体的思路是利用print_r 进行打印调试,遇到object就用->读取,遇到Array就用[]读取,在调试的时候遇到中文编码的问题用header("Content-Type: text/html; charset=UTF-8");

由于个人水平有限,调试花了一个多小时,希望看到这Blog的人半个小时调试出来。

<?php

$con = mysql_connect("localhost","dbuser","dbpassword");
if (!$con){
  die('Could not connect: ' . mysql_error());
}else{
  echo 'ok';
}
mysql_select_db("dbname", $con);

//必须要转为utf8否则读入数据库报错,注意与UTF-8的区别
mysql_query('set names utf8;');

$xml=simplexml_load_file("zh-cn/news.xml") or die("Error: Cannot create object");

//页面显示
header("Content-Type: text/html; charset=UTF-8");
foreach ($xml as $news) {
   $id = (string)$news['id'];

   $year = (string)$news['year'];

   $title =(string)$news->title;

   $thumbnail = (string)$news->thumbnail;
   $content = (string)$news->content;

//看到这段代码的同学也可以研究一下VALUES中的变量$title,$thumbnail,$content必须要加‘’,如果没有加的话就无法insert   

mysql_query("INSERT INTO news (newsid, year,title,thumbnail,content) VALUES ($id, $year,'$title','$thumbnail','$content')")or die(mysql_error());

   foreach ($news->images->image as $image) {
        $image = (string)$image->source;
        mysql_query("INSERT INTO sub_news (news_id, image) VALUES ($id, '$image')")or die(mysql_error());
   }
}
mysql_close($con);
?>

 

 

转载于:https://www.cnblogs.com/Nick-Cai/p/5421328.html

### 升级 Ubuntu 20.04 LTS 到 24.04 LTS 的步骤 Ubuntu 系统的升级是按顺序进行的,因此必须首先将系统从 Ubuntu 20.04 LTS 升级Ubuntu 22.04 LTS。完成此步骤后,才能进一步升级Ubuntu 24.04 LTS [^1]。 #### 步骤一:升级Ubuntu 22.04 LTS 在执行任何升级之前,请确保备份重要数据以避免意外丢失。 1. 更新当前系统的软件包列表并安装所有可用更新: ```bash sudo apt update && sudo apt upgrade -y ``` 2. 安装 `update-manager-core` 包(如果尚未安装): ```bash sudo apt install update-manager-core ``` 3. 检查是否可以升级到下一个版本: ```bash sudo do-release-upgrade -c ``` 4. 如果确认可以升级,则执行实际的升级过程: ```bash sudo do-release-upgrade ``` 5. 按照屏幕上的提示完成升级过程,并重启计算机。 #### 步骤二:升级Ubuntu 24.04 LTS 一旦您已经成功升级到了 Ubuntu 22.04 LTS,接下来就可以继续升级Ubuntu 24.04 LTS。 1.Ubuntu 22.04 上重复第一步中的命令来更新和升级现有的软件包。 2. 使用以下命令检查是否有新的发行版可供升级: ```bash sudo do-release-upgrade -c ``` 3. 执行系统升级命令: ```bash sudo do-release-upgrade ``` 4. 遵循屏幕上的指示完成升级过程,并重新启动您的计算机。 ### 注意事项 - 在开始升级之前,建议清理不必要的软件包和缓存,以减少潜在的问题: ```bash sudo apt autoremove sudo apt clean ``` - 如果遇到问题提示没有可用的 LTS 开发版本,需要编辑 `/etc/update-manager/release-upgrades` 文件并将 `Prompt` 设置为 `normal` [^3]。 - 可以使用 `lsb_release -a` 命令来查看当前运行的 Ubuntu 版本 [^3]。 ### 示例代码 以下是用于更新和升级的基本命令汇总: ```bash # 更新软件包列表 sudo apt update # 升级已安装的软件包 sudo apt upgrade -y # 清理不再需要的软件包 sudo apt autoremove # 清除本地存储的软件包缓存 sudo apt clean # 检查是否存在新版本 sudo do-release-upgrade -c # 开始升级到新版本 sudo do-release-upgrade # 查看当前Ubuntu版本 lsb_release -a ``` 请根据实际情况调整这些命令,并仔细遵循升级过程中提供的指导。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值