以下是使用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

请求接口1:httpbaiducomch1php得到内容 ret_status 0 ret_msg success ret_data end_time 2023-08-31 005500 begin_time 2023-08-31 000000

原文地址: https://www.cveoy.top/t/topic/iUwh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录