ホームページ >バックエンド開発 >PHPチュートリアル >php と XML、XSLT、Mysql を組み合わせて code_PHP を実装するチュートリアル

php と XML、XSLT、Mysql を組み合わせて code_PHP を実装するチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:43:04821ブラウズ

XML と
extension=php_xslt.dll //XSLT 関数ライブラリの使用
上記の 3 つのライブラリを使用する場合、php インストール ディレクトリの dlls ディレクトリをパスに追加する必要があります。そうしないと、以下の
これらのライブラリ
が見つかりません。もちろん、php で PEAR クラス ライブラリを使用します。主に DB クラス ライブラリと Sql2XML クラス ライブラリを使用します。最新バージョンは
pear.php.net
からダウンロードできます。上記の 2 つのクラス ライブラリをダウンロードした後、次の設定を行うとよいでしょう。 php.iniにあります
include_path = ".;d:phppear"
d:phppearは私のpearのインストールパスです
設定後、マシンを再起動しないと、パスが見つからずApacheが起動異常になります。通常は使用できません

これで、PHP で XML と XSLT を使用するための設定が完了しました。とても簡単ですね :)
Linux を使用しているユーザーは、
http://www.gingerall.com/ にアクセスして、 XSLt のソース コードについて
http://www.gnu.org/software/libiconv/Iconv のソース コードをダウンロード
php と XML の組み合わせ、からデータを抽出し、XML ドキュメントを生成し、変換するプロセスエンタープライズ ユーザー情報テーブル、英語名: yhxx
テーブル構造:
#
# データ テーブル構造 `yhxx`
#
CREATE TABLE yhxx (
nsrnm varchar(15) NOT NULL default '',
qymc varchar( 200) NOT NULL デフォルト '',
qydh varchar(50) NOT NULL デフォルト '',
PRIMARY KEY (nsrnm)
) TYPE=MyISAM COMMENT='ユーザー情報テーブル'
#
# データテーブルの内容 `yhxx`
#
yhxx の値に挿入 ('310109040111985'、'Qiaojia Catering Development Co., Ltd.'、'8621-63346626');
yhxx の値に挿入 ('310104040221736'、'上海嘉陵貿易有限公司'); '、 '74292546');
INSERT INTO yhxx VALUES ('310108040331576', 'Emerald Art Company', '54861465'); 次に、データを抽出するプログラムとデータを表示するページを書き始めました。皆さんに理解していただくために、最も簡単な方法でプログラムを作成しました
プログラム ファイル名: browesData.php
ページ ファイル名: browesData.html
プログラムとページ ファイルはダウンロードできます。このプログラムは win2000 と mysql でテストされています
。次のページのコードを参照してください

このテクノロジーに興味がある場合は、phpとxml、xslt、データベースを組み合わせたより深い応用についてお話しましょう



コードをコピーしてください

コードは次のとおりです以下の通り:


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()); //接続失敗、エラーメッセージ出力
}
//以下の2つはパブリック関数です
/**
* XSL ドキュメントを読み取ります
*
* @param String $filename - XSL ファイルの名前
* @return string
*/
function readXsl($filename)
{
if ( false==file_exists($filename))
{
echo "読み取るファイル$filename が存在しません

return false;
}
return implode('', file($filename));
} //関数 readXsl の終了
/**
* xml ファイルまたは配列変数を xsl ファイルに基づいた HTML コンテンツに変換します
* http://knowsky.com
* @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"
);
$sql2xmlclass->SetOptions($options); XML ドキュメント データを生成するには
$sql2xmlclass->add($arydata)
//XML ドキュメントを取得
$xmlstring = $sql2xmlclass->getxml();
//print $xmlstring; XSLT を使用して XML データ ドキュメントを HTML ドキュメントに変換する
$arguments = array('/_xml' => $xmlstring,
'/_xsl' => result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl) ', null, $arguments);
if ($result) {
return $result;
xslt_free($xh);
return "
nsrnm、#code
qymc、#Enterprise を選択するための XML データの変換中にエラーが発生しましたname
qydh #電話
from
yhxx #ユーザ情報テーブル";
// SQL文を実行
$res = $db->query($sql);
if ( $db->isError($res))
{
echo "SQL ステートメントの実行中にエラーが発生しました";
}
while ($row = $res->fetchRow(DB_FETCHMODE_ASSOC))
{
$data[] = $ row; // データを配列に入れます
}
//print_r($data);
//データが多次元配列に配置されたことがわかります
//この時点で、プログラムは基本的に完了しました。次に、表示するページを定義する必要があります。データ
//DW または FrontPage XP を開いて表示ページを作成し、ダウンロードできるように皆さんに提供します
//作成したデータ表示ページ ファイル: browesData.html
/*
これがデータです。通常表示するリストインターフェイス



データの閲覧</head> <br><table border="1" cellpadding="0" ="0" style="border-collapse:collapse" bordercolor="#111111" width="100%" id="AutoNumber1"> <br><td width="21%" align=" center" bgcolor="#C0C0C0">コード</td> <br><td width="50%" align="center" bgcolor="# C0C0C0">会社名</td> <br><td width= "29%" align="center" bgcolor="#C0C0C0"> 電話番号</td> <br><td width="21%> ; <br></tr> <br></html><div class="codebody" id="code65215"> <br>*/ <br>//我握它加工してXSLT格式のHTML文档 <br>/* <br><?xml version="1.0"coding="gb2312"?> <br><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <br><xsl:output method="html" version="1.0" encoding="GB2312" indent="yes" /> <br><xsl:template match="/"> <br><html xmlns="http://www.w3.org/1999/xhtml"> <br> <br><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <br><title>データ浏览

<ボディ>
























*/
$htmlFile="browsData.html" ;
$htmlStr = readXsl($htmlFile); // 将xslt格式のHTML文读取量中
echo getHtml($data, $htmlStr) ;
//程序结束
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/320842.html技術記事 php 内の xml と xslt をいくつかの dll パッケージに使用します。extension=php_domxml.dll //XML の関数関数 extension=php_iconv.dll //GB2312 を UTF-8 に変換するなどの拡張子を使用します。 ..
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
計画名 電话