php写xml文件往discuz X2服务器写xml基本思路
feilong.org 修订于2011-09-27 04:22:45 您好,第 368 位朋友!php如何往服务器写xml文件?思路是首先写入的文件夹要有写入权限,其次用xml文件存放的物理路径,再次用simplexml_load_string,然后用 fopen、
fwrite、fclose。飞龙这里写的php写xml文件举例,代码有discuz X2 的数据库写入操作,你可以根据你实际情况修改,不必拘泥。本日志修订地址 http://feilong.org/php-xml-discuz 欢迎阅读。
<?php //飞龙写的php往服务器写xml文件的基本思路 欢迎与飞龙交流 下面代码有discuzX2的部分,可以根据你实际情况修改 //定义xml文件的名称生成方式 $xmlfilename=fl_create_xml_filename($musicids);//echo '$xmlfilename='.$xmlfilename;echo 'feilongtest'; //定义xml文件存放的物理路径 $rootdir=dirname(dirname(dirname(dirname(__FILE__))));//echo $rootdir; $xmldir=$rootdir.'/data/cache/'; $xmlpath=$xmldir.$xmlfilename; //echo '$xmlpath='.$xmlpath;echo 'feilongtest'; //定义xml文件内容 $xmlcont=fl_create_xml_cont($musicids);//print_r($xmlcont); //生成xml规范字符串对象 $string = <<<XML $xmlcont XML; $xmlobject = simplexml_load_string($string);//print_r($xml); //规范的xml文件内容 $newxmlcont = $xmlobject->asXML();// print_r($newxml); //打开或新建xml文件,写入规范的xml文件内容,然后关闭文件 $xmlfile = fopen($xmlpath, "w"); fwrite($xmlfile, $newxmlcont); fclose($xmlfile); //返回xml文件的显示网址! $xmlurl=$_G['siteurl'].'/data/cache/'.$xmlfilename;//echo '$xmlurl='.$xmlurl;echo 'feilongtest'; }//20110926-0927 //相关xml基础操作处理的php函数, 具体请按自己的项目数据表修改 function fl_create_xml_cont($musicids){ if($musicids){ global $_G; $xmlcont='<?xml version="1.0" encoding="utf-8"?>'."\n"; $xmlcont.='<playlist version="1" xmlns="http://xspf.org/ns/0/">'."\n"; $xmlcont.=' <trackList>'."\n"; $i=0; foreach ($musicids as $musicid){ $i++; //循环获取音乐相关值 $music=fl_get_music_by_id($musicid); $musicname=cutstr($music['name'], 60,'....'); $uid=$music['uid'];$username=fl_get_username($uid); $musicfile=$music['musicurl'];$musicpath=$_G['siteurl'].$musicfile; $musicface=fl_get_music_face($music); $xmlcont.=' <track>'."\n"; $xmlcont.=' <creator>'.$i.'.'.$username.'</creator>'."\n"; $xmlcont.=' <title>'.$musicname.'</title>'."\n"; $xmlcont.=' <location>'.$musicpath.'</location>'."\n"; $xmlcont.=' <image>'.$musicface.'</image>'."\n"; $xmlcont.=' </track>'."\n"; }/// $xmlcont.=' </trackList>'."\n"; $xmlcont.='</playlist>'."\n"; return $xmlcont; }}//20110926 function fl_create_xml_filename($musicids){ if($musicids){ $filename='fl'; foreach ($musicids as $musicid){ $filename.=$musicid; }/// $xmlname=$filename.'.xml'; return $xmlname; }}//20110926 ?> |
更新网址:https://feilong.org/php-xml-discuz
最初发布:20110927 04:22:45 feilong.org 于广州
加入收藏夹,查看更方便。
所在分类: 网站开发