0

0

微信公众平台开发实例 PHP开发 代码挂载SAE平台(六)星座物语 php解析xml文件

php中文网

php中文网

发布时间:2016-06-21 08:48:46

|

1372人浏览过

|

来源于php中文网

原创

今天带来的是查询每日星座运势的功能,这个功能非常简单,在微信平台上输入星座名称加一个标识符(例如“+”号),后台程序匹配这个标识符调用相应的功能。

 

立即学习PHP免费学习笔记(深入)”;

腾讯智影-AI数字人
腾讯智影-AI数字人

基于AI数字人能力,实现7*24小时AI数字人直播带货,低成本实现直播业务快速增增,全天智能在线直播

下载

具体流程上:1.使用字符串分割函数explode(w3school)获取到星座名称。

 

立即学习PHP免费学习笔记(深入)”;

2.将星座名称匹配成相应的星座编号。

 

立即学习PHP免费学习笔记(深入)”;

3.将这个编号传递给相应的API。

 

立即学习PHP免费学习笔记(深入)”;

4.接收API返回的xml格式的数据。

 

立即学习PHP免费学习笔记(深入)”;

5.处理xml格式的数据。

 

立即学习PHP免费学习笔记(深入)”;

6.生成结果。

 

立即学习PHP免费学习笔记(深入)”;

其中我再制作过程中由于是初学者,在第五步费了些功夫。API返回的xml格式为

 

立即学习PHP免费学习笔记(深入)”;

[html]  

 

     

       

综合运势  

        3  

         

     

     

       

爱情运势  

        3  

         

     

     

       

工作状况  

        2  

         

     

      ……  

    2013-11-16  

 

 

立即学习PHP免费学习笔记(深入)”;

 

立即学习PHP免费学习笔记(深入)”;

首先我使用file_get_contents() 函数把API返回的数据文件读入一个字符串中。然后用simplexml_load_string() 函数把 XML 字符串载入对象中。然后再使用这个对象读取每个xml标签中的数据,但这里我遇到了一个问题,返回的xml格式的文件都是

[html] 

 

           

……  

           ……  

           ……  

 

 

立即学习PHP免费学习笔记(深入)”;

这种格式,这样我使用“对象”->item->title的方法只能读取到第一个item的数据,这里我最终使用的办法的使用

[php]  

foreach ($xml->item as $th) {  

  

           $content_title[$i] = $th->title;  

           $content_rank[$i] = $th->rank;  

           $content_value[$i] = $th->value;  

           $i++;  

       }  

 

立即学习PHP免费学习笔记(深入)”;

对这个对象“$xml”实现遍历,并使用一个自增变量i把每一组的数据存储在数组中。

其中的foreach 语句用于循环遍历数组。

 

立即学习PHP免费学习笔记(深入)”;

每进行一次循环,当前数组元素的值就会被赋值给 value 变量(数组指针会逐一地移动) - 以此类推。

语法

[php]  

foreach (array as value)  

{  

    code to be executed;  

}  

 

立即学习PHP免费学习笔记(深入)”;

例子

下面的例子示范了一个循环,这个循环可以输出给定数组的值:

[php]  

 

 

  

$arr=array("one", "two", "three");  

  

foreach ($arr as $value)  

{  

  echo "Value: " . $value . "
";  

}  

?>  

  

 

 

 

立即学习PHP免费学习笔记(深入)”;

 

立即学习PHP免费学习笔记(深入)”;

程序源代码如下:

 

立即学习PHP免费学习笔记(深入)”;

[php]  

function xingzuo($keyword) {  

    if (make_xingzuo($keyword)) {  

        $keyword = make_xingzuo($keyword);  

        $qurl = 'http://api.uihoo.com/astro/astro.http.php?fun=day&id=' . $keyword . '&format=xml';  

        $content = file_get_contents($qurl);  

        $xml = simplexml_load_string($content);  

        $i = 0;  

        foreach ($xml->item as $th) {  

  

            $content_title[$i] = $th->title;  

            $content_rank[$i] = $th->rank;  

            $content_value[$i] = $th->value;  

            $i++;  

        }  

  

        return "星座运势:\n综合运势:" . $content_rank[0] . "颗星\n爱情运势:" . $content_rank[1] . "颗星\n学习状态:" . $content_rank[2] . "颗星\n理财运势:" . $content_rank[3] . "颗星\n健康指数:" . $content_value[4] . "\n幸运颜色:" . $content_value[6] . "\n幸运数字:" . $content_value[7] . "\n速配星座:" . $content_value[8] . "\n综合概述:" . $content_value[9];  

    }  

    else  

        return "输入的星座小编不认识哎>_

}  

  

function make_xingzuo($keyword){  

    $arr = array('白羊座' => '0','金牛座' => '1','双子座' => '2','巨蟹座' => '3','狮子座' => '4','处女座' => '5','天秤座' => '6','天平座' => '6','天蝎座' => '7','射手座' => '8','摩羯座' => '9','水瓶座' => '10','双鱼座' => '11');  

    if(strtr($keyword, $arr)0){  

        return strtr($keyword, $arr);  

    }  

 else {  

       return false;   

    }  

      

      

}  

 

立即学习PHP免费学习笔记(深入)”;



微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

1044

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

334

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

213

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

35

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

111

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

77

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

17

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

813

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

97

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
AngularJS教程
AngularJS教程

共24课时 | 3.8万人学习

CSS3实现按钮特效视频教程
CSS3实现按钮特效视频教程

共15课时 | 3.3万人学习

细说PHP第三季
细说PHP第三季

共58课时 | 11.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号