首頁 後端開發 php教程 把從SQL中取出的資料轉換成XMl格式_PHP教學

把從SQL中取出的資料轉換成XMl格式_PHP教學

Jul 21, 2016 pm 04:11 PM
pear php sql xml 數據 格式


使用了php的PEAR和DB
// -------------------------------- ----------- ---------------------------------------
// | PHP 版本4.0                             🎜>|// ----------------------------------- ------ --------------------------------------
// |版權所有(c) 1997, 1998, 1999, 2000, 2001 PHP 小組             
|// ---------------------------- ------------------------------------------
// |此來源文件受PHP 許可證2.0 版的約束,       
|// |與此包捆綁在文件LICENSE 中,且是        |// | http:/ /www.php.net/license/2_02.txt。
|//|如果您沒有收到PHP 許可證副本並且無法   
|// |透過萬維網取得,請留言至          
|// | license@php.net,以便我們立即向您立即向您提供建議郵寄一份。
|// -------------------------------------------- ------------ --------------------------
// |作者:克里斯蒂安·斯托克                         
|// -------------------------------------------------- --------------------- --------------------------
//
// $Id: sql2xml.php,v 1.59 2001/11/13 10:54:02 chregu Exp $

/**
* 此類別採用 PEAR::DB-Result 物件、sql 查詢字串或陣列
*  並傳回它的 xml 表示。
*
* TODO
*   -編碼等,標頭選項
*   -錯誤檢查
*
* 使用範例
*
* include_on (*"DBce. php");
* include_once("XML /sql2xml.php");
* $db = DB::connect("mysql://root@localhost/xmltest");
* $sql2xml = new xml_sql2xml();
* //只有在您需要預設值以外的其他值時才需要下一個
* $sql2xml->setEncoding("ISO-8859-1","UTF-8" );
* $result = $db- >query("從band 中選擇*");
* $xmlstring = $sql2xml->getXML($result);
*
* 或
*
* include_once (" DB.php");
* include_once("XML/sql2xml.php");
* $sql2xml = new xml_sql2xml("my://root@localhostsql /xmltest");
* $sql2xml ->Add("select * from band");
* $xmlstring = $sql2xml->getXML();
*
* 更多文件和教學/操作方法可在以下位置找到:
*   http://php.chregu.tv/sql2xml
*
* @author   Christian Stocker
* @version $Id: sql2xml.php,v 1.59 2001/11/13 10:54:02 chregu Exp $
* @package  XML
*/
🎜>
    /**
    * 如果連接表應該巢狀輸出。
    *  表示,如果您連接了兩個或多個查詢,則後一個
    *   指定的表將前一個
    *與mysql 一起使用。其他 RDBMS
    *   您必須手動提供表格關係(請參閱 user_tableinfo)
    *
    * @var  lean    */
    var $nested = True ;

    /** 🎝>*/    /**
    * 行中的標記元素名稱
    *
    * @var    *
    * @var   
字串* @see  insertNewRow()
    */
    var $tagNameRow = "row";

   >
    /**
    *
    * @var   object PEAR::DB
    * @access private
    */
    var $user_options = array();


   

    /**
    * 在擴充類別中所使用的選項(例如在 sql2xml_ext 中)。
    * 它們透過SetOptions 作為陣列傳遞(arrary("user_options" = array());
    *  ,然後可以使用$this->user_options["bla"] 從您的    var $xmlroot;


    *  如果您不使用mysql,它特別有用,因為
    *  mysql 以外的其他RDBMS 目前無法在查詢中提供有關
    *  您的資料庫結構的正確資訊。如果您在 sql 中加入了超過 2 個
    *  表,那麼 mysql 也不可能找出
    *  您的真實關係。
    *  參數與 PEAR: 中的 fieldInfo 中的參數相同: DB 和一些
    *   其他的。它們來了:
    *  來自 PEAR::DB->fieldinfo:
    *
    *    $tableInfo[$i]["table"]   *    $tableInfo[$i]["table"] 
    *           與以某些 RDBMS/Comples 查詢與陣列,無法
    *     您可以
    *           則在此指定較精確。或者,如果您願意,該字段
    *           屬於另一張表,而不是實際所說的(是的,有
     >    *
    *    $ tableInfo[$i]["name"]     :欄位#$i的名稱。若您想要查詢或陣列提供的另一個
    *           以標籤名稱,請於此指定
    *    
    *
    *   其他資訊
    *     $tableInfo["parent_key"] [$table]     $tableInfo["parent_key"] [$table]  :$table 父鍵的索引。
    *           這是在其中找出已變更的字段,如果此
    *          *           父表。
    *
    *     $tableInfo["parent_table"][$table]: $table 的父錶名稱。
    *
    * @var      array
    * @access private    * 編碼類型,資料庫的輸入有
    */
    var $encoding_from  = "ISO-8859-1";

    /**
    * 編碼類型,xml 中的輸出應該有
    *(注意 domxml 目前只支援 UTF-8,或至少看起來是這樣)
    */
   姓名";

    /**
    * 建構子
    * 建構子可以使用Pear::DB「資料來源名稱」(例如
    *  「mysql://user:passwd@localhost/name」),然後連接到資料庫,或PEAR::DB 物件鏈接,如果您之前已經連接過
    *  之前的資料庫。
    "  如果您沒有提供$dsn 任何內容,則稍後只能使用
    * 新增內容pear::db-resultset 或作為陣列提供sql-strings 將    * 如果您想為
    *  root- 提供另一個名稱,請使用$root 參數。 >    *  根元素,但僅當您新增結果集/陣列/sql-string時。 PEAR::DB「資料來源名稱」或物件DB 物件
    * @param  string $root  名稱xml-doc 根元素。*/
    function XML_sql2xml ($dsn = Null, $root = "root") {
如果字符串它必須是dsn 識別碼;

        if (is_string( $dsn))
                    $this->db = DB::Connect ($dsn);
             if (DB::isError($ this->db))
         print "XML_sql2xml 的給定dsn 在檔案".__FILE__." 的第".__LINE__."
n" 行無效;
                return new DB_Error($this->db->code          }

        elseif (is_object($dsn ) && DB::isError($dsn))
        {
            🎜>            return new DB_Error($dsn-> code,PEAR_ERROR_DIE);
     它已經是一個連線識別碼
        elseif (get_parent_class($dsn ) == "db_common")
        {
            $ 

        $this->xmldoc = domxml_new_xmldoc('1.0');

        //oehm,但不幸的解決方案似乎知道什麼?
        $ this->xmldoc->encoding = $this->encoding_to;        

  $this->xmlroot = $this->xmldoc->add_root($root );
            //PHP 4.0.6 有$root- >name 作為標記名,請在此處檢查...
      }))
            {
                     }

    }

    /**
    * 將新結果集新增至xml-object
    *  給予sql-query-string、pear::db_result 物件或陣列作為
 this   >    *  輸入的方法,並加到$this->xmldoc
    *
    * @param    字串sql-str 🎜>    * @access   public
    * @see      addResult()、addSql()、addArray(    addResult()、addSql()、addArray( */
    函數add ($resultset, $params = Null )
    {

        ($resultset)) {
            if ( preg_match("/.xml$/",$resultset)) {
   >            }
            elseif (preg_match("/.*select.* from.*/i" ,  $resultset)) {
                          else {
                $this- > ;AddXmlString($結果集);
            }

        }            $this->AddArray($結果集) ;
        }

           $this->AddResult($resultset);
        }
    }

    /**
    * 將xml 檔案的內容新增至$this->xmldoc,與一般結果集處於相同等級
    *(大部分位於 下方)
    *    * @param    mixed xpath     * @param    mixed xpath  的標籤結果
    * @access   public
    * @see      doXmlString2Xml()
     doXmlString2Xml()
      doXmlString2Xml()
    */

    function addXmlFile($file,$xpath = Null) ;
        $content = fread( $fd, filesize( $file ) );
        fclose( $f 🎜>    }

    /**
    * 將xml 字串的內容新增至$this->xmldoc,與一般結果集處於相同等級
    *(大部分位於 下方)
   
    * @param    mixed xpath     * @param    mixed xpath  先前的標籤結果
    * @access   public
    * @see      doXmlString2Xml()
      doXmlString2Xml()
      */




http://www.bkjia.com/PHPjc/313946.html

www.bkjia.com

http: //www.bkjia.com/PHPjc/313946.htmlTechArticle使用了php的PEAR和DB ?php // ------------- -------------------------------------------------- ------- // | PHP 版本4.0 |// ---------------------------------- ---------------------- ----...
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1662
14
CakePHP 教程
1419
52
Laravel 教程
1312
25
PHP教程
1262
29
C# 教程
1235
24
PHP和Python:比較兩種流行的編程語言 PHP和Python:比較兩種流行的編程語言 Apr 14, 2025 am 12:13 AM

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP行動:現實世界中的示例和應用程序 PHP行動:現實世界中的示例和應用程序 Apr 14, 2025 am 12:19 AM

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP的持久相關性:它還活著嗎? PHP的持久相關性:它還活著嗎? Apr 14, 2025 am 12:12 AM

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP與其他語言:比較 PHP與其他語言:比較 Apr 13, 2025 am 12:19 AM

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python:代碼示例和比較 PHP和Python:代碼示例和比較 Apr 15, 2025 am 12:07 AM

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

PHP與Python:核心功能 PHP與Python:核心功能 Apr 13, 2025 am 12:16 AM

PHP和Python各有優勢,適合不同場景。 1.PHP適用於web開發,提供內置web服務器和豐富函數庫。 2.Python適合數據科學和機器學習,語法簡潔且有強大標準庫。選擇時應根據項目需求決定。

PHP的目的:構建動態網站 PHP的目的:構建動態網站 Apr 15, 2025 am 12:18 AM

PHP用於構建動態網站,其核心功能包括:1.生成動態內容,通過與數據庫對接實時生成網頁;2.處理用戶交互和表單提交,驗證輸入並響應操作;3.管理會話和用戶認證,提供個性化體驗;4.優化性能和遵循最佳實踐,提升網站效率和安全性。

PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

See all articles