请求接口1:httpbaiducomch1php得到内容 ret_status 0 ret_msg success ret_data end_time 2023-08-31 005500 begin_time 2023-08-31 000000
以下是使用PHP生成XML文件的代码:
<?php
// 请求接口1
$url1 = 'http://baidu.com/ch1.php';
$content1 = file_get_contents($url1);
$data1 = json_decode($content1, true);
// 请求接口2
$url2 = 'http://baidu.com/ch2.php';
$content2 = file_get_contents($url2);
$data2 = json_decode($content2, true);
// 创建XML对象
$xml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?>'."\n".'<!DOCTYPE tv SYSTEM "http://xmltv.cvs.sourceforge.net/viewvc/xmltv/xmltv/xmltv.dtd">'."\n".'<tv generator-info-name="Sage" generator-info-url="https://github.com/OpenAI/gpt/blob/main/samples/dialogue.py"></tv>');
// 添加频道和节目信息
foreach ($data1[0]['ret_data'] as $program) {
$channel = $xml->addChild('channel');
$channel->addAttribute('id', $program['bd_name']);
$displayName = $channel->addChild('display-name', $program['bd_name']);
$displayName->addAttribute('lang', 'zh');
$programme = $xml->addChild('programme');
$programme->addAttribute('channel', $program['bd_name']);
$programme->addAttribute('start', str_replace(' ', 'T', str_replace('-', '', str_replace(':', '', $program['begin_time']))). ' +0800');
$programme->addAttribute('stop', str_replace(' ', 'T', str_replace('-', '', str_replace(':', '', $program['end_time']))). ' +0800');
$title = $programme->addChild('title', $program['desc']);
$title->addAttribute('lang', 'zh');
}
foreach ($data2[0]['ret_data'] as $program) {
$channel = $xml->addChild('channel');
$channel->addAttribute('id', $program['bd_name']);
$displayName = $channel->addChild('display-name', $program['bd_name']);
$displayName->addAttribute('lang', 'zh');
$programme = $xml->addChild('programme');
$programme->addAttribute('channel', $program['bd_name']);
$programme->addAttribute('start', str_replace(' ', 'T', str_replace('-', '', str_replace(':', '', $program['begin_time']))). ' +0800');
$programme->addAttribute('stop', str_replace(' ', 'T', str_replace('-', '', str_replace(':', '', $program['end_time']))). ' +0800');
$title = $programme->addChild('title', $program['desc']);
$title->addAttribute('lang', 'zh');
}
// 输出XML文件
$xml->asXML('tv.xml');
?>
运行此代码后,将生成一个名为tv.xml的XML文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tv SYSTEM "http://xmltv.cvs.sourceforge.net/viewvc/xmltv/xmltv/xmltv.dtd">
<tv generator-info-name="Sage" generator-info-url="https://github.com/OpenAI/gpt/blob/main/samples/dialogue.py">
<channel id="CCTV1高清">
<display-name lang="zh">CCTV1高清</display-name>
</channel>
<programme channel="CCTV1高清" start="20230831000000 +0800" stop="20230831005500 +0800">
<title lang="zh">什么</title>
</programme>
<programme channel="CCTV1高清" start="20230831005500 +0800" stop="20230831012300 +0800">
<title lang="zh">说法</title>
</programme>
<channel id="CCTV2高清">
<display-name lang="zh">CCTV2高清</display-name>
</channel>
<programme channel="CCTV2高清" start="20230831000000 +0800" stop="20230831005500 +0800">
<title lang="zh">开始</title>
</programme>
<programme channel="CCTV2高清" start="20230831005500 +0800" stop="20230831012300 +0800">
<title lang="zh">今日</title>
</programme>
</tv>
请注意,在实际运行代码之前,请将URL更改为真实的接口URL,并确保服务器可以访问这些URL
原文地址: https://www.cveoy.top/t/topic/iUwh 著作权归作者所有。请勿转载和采集!