当前位置: 首页 > 图文教程 > 网络编程 > PHP > 二 php与XML、XSLT、Mysql的结合运用,代码篇

PHP
关于时间计算的结总
一些PHP写的小东西
用缓存实现静态页面的测试
PHP数字格式化
echo, print, printf 和 sprintf 区别
让你的网站首页自动选择语言转跳
如何使用PHP往windows中添加用户
PHP产生随机字符串函数
同一空间绑定多个域名而实现访问不同页面的PHP代码
实现 win2003 下 mysql 数据库每天自动备份
eWebEditor v3.8 商业完整版 (PHP)
PHP中,文件上传
計算你開發的 PHP 程式大小
產生圖片隨機字串
数字转英文
ajax缓存问题解决途径
PHP字符函数大全
从网上搜到的phpwind 0day的代码
IIS下配置Php+Mysql+zend的图文教程
如何写php程序?

PHP 中的 二 php与XML、XSLT、Mysql的结合运用,代码篇


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 221 ::
收藏到网摘: n/a

<?php    
    require_once "DB.php";            //PEAR中的数据库处理类
    $dataType = "mysql" ;            //数据库类型
    $user = "root";                    //用户名
    $pass = "abcd" ;                //密码
    $host="202.96.215.200";            //Mysql数据库服务器地址
    $db_name = "test";                //数据库名
    $dsn="$dataType://$user:$pass@$host/$db_name";   //连接数据库的DNS配制
    $db = DB::connect($dsn);        //连接数据库
    if (DB::isError($db))
    {            
        die ($db->getMessage());    //连接失败,输出出错信息
    }
    
    //下面二个是公共的函数
    /**
     * 读取xsl文档
     *
     * @param String $filename - xsl文件的名称
     * @return string
     */
    function readXsl($filename)
    {    
        if(false==file_exists($filename))
        {
            echo "要读取的文件<font color='red'>$filename</font>不存在</br />";    
            return false    ;
        }
        return implode('', file($filename));
    } //end function readXsl

/**
* 将xml文件或数组变量根据xsl文件转换成HTML内容
*
* @param array $arydata - 数组变量
* @param String $xslstring - xsl文档数据
* @param String $xmlstring - xml文档数据
*/
function getHtml($arydata = false, $xslstring = false, $xmlstring = false)
{
    global $db ;    //使用刚才的$db对象
    include_once("XML/sql2xml.php");    //把sql2xml包含进来
    $sql2xmlclass = new xml_sql2xml($db);    //将sql2xml实例化
    $sql2xmlclass->setEncoding("GB2312");    //设置数据的转码类型
    if (false == $xmlstring) { // 如果用户传入数组数据,则应用该数组数据到xsl        
        //设置生成XML文档数据的节点名称
        $options = array (  tagNameRow      => "row" ,
                            tagNameResult   => "result"