ホームページ >php教程 >php手册 >PHP の QueryPath jQuery

PHP の QueryPath jQuery

WBOY
WBOYオリジナル
2016-06-13 12:17:421008ブラウズ

官方主页  http://querypath.org/

QP API 手册  http://api.querypath.org/docs/
QueryPath (QP) ライブラリは、PHP で jQuery のような効果を実装しており、XML HTML を簡単に処理するために使用することもできます。非常に強力です。 ! !

QueryPath チュートリアル (簡単な説明)
QueryPath はメソッド チェーンを利用して、DOM を操作するための簡潔なツール スイートを提供します。
メソッド チェーンの基本原理は、各メソッドがこの場合、QueryPath オブジェクトは通常、それ自体を返します。
$qp = qp(QueryPath::HTML_STUB); // Generate新しい QueryPath オブジェクト。(QP オブジェクトを作成します)
$qp2 = $qp->find('body'); // body タグを見つけます。(「body」タグを見つけます)
// 今すぐ驚くべき部分: (以下の何が驚いたかをご覧ください)
if ($qp === $qp2) {
// これは常に出力されます (常にこのように出力されます)
print "MATCH";
}
$qp が常に $qp2 と等しいのはなぜですか? find() 関数がすべてのデータ収集を行ってから QueryPath オブジェクトを返すからです。
これは難解に見えるかもしれませんが、すべてです。この種のインターフェイスを使用すると、多くのメソッドを連鎖させることができます。
(jQuery を使用するのと同じようにメソッドを連鎖させることができます)
qp(QueryPath::HTML_STUB)->find(' body ')->text('Hello World')->writeHTML();
この例では、4 つのメソッド呼び出しがあります:
qp(QueryPath::HTML_STUB): 新しい QueryPath オブジェクトを作成し、これは QueryPath オブジェクトを返します。
find('body'): QueryPath ドキュメントを検索して、'body' という名前の要素を探します。 ; body 要素を見つけると、その要素への内部ポインタを保持し、QueryPath オブジェクト (body 要素をラップしています) を返します。 Hello World'): この関数は、QueryPath でラップされた現在の要素を取得し、テキスト Hello World を追加します。オブジェクトは引き続き QueryPath オブジェクトを返します。
writeHTML(): writeHTML() 関数は、HTML をクライアントに返すために使用されます。 >したがって、上記のチェーンの最後で、次のようなドキュメントを作成することになります:



コードをコピー

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



無題
Hello World< /body> ;



その HTML のほとんどは、< 内に Hello World テキストを追加しただけです。 /body> ; タグ。
すべての QueryPath 関数が QueryPath オブジェクトを返す必要があるわけではありません。ただし、これらの関数については付属のドキュメントに詳しく説明されています。
次に、QueryPath の基本原理を説明します。 QueryPath API の詳細を実行するより大きな例を見てください。

長い例
この例では、QueryPath のさまざまなコア機能を示します。
この例では、標準の QueryPath 関数の一部を使用します。
コードの各行は個別にコメントされています。



コードをコピーします

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


/**
* QueryPath を使用します。
*
* このファイルには、QueryPath を使用して Web ページを生成する方法
* の例が含まれています。
* @package QueryPath
* @subpackage 例
* @author M Butcher
* @license LGPL GNU Lesser GPL (LGPL) または MIT に似たライセンス。
*/
// QueryPath コアが必要です。
require_once 'QueryPath/QueryPath.php';
// HTML スタブ ドキュメント (実際には XHTML) から始まり、タイトルに移動します。
qp(QueryPath::HTML_STUB, 'title')
// タイトルにテキストを追加します
->text('Example of QueryPath.')
// ここで < を探します;本体> element
->find(':root body')
// 本文内にタイトルと段落を追加します。
->append('

これはテストページです

テストテキスト

')
// 次に、本文内に作成したばかりの段落を選択します
->children('p')
// 'class="some-class"' 属性を段落に追加します
->attr('class', 'some-class')
// また、スタイル属性も追加して、背景色を設定します。
->css('background-color', '#eee')
// もう一度段落に戻ります
->parent()
// 段落とタイトルに空のテーブルを追加します。
->prepend('
')
// さて、テーブルに行きましょう...
->find( '#my-table')
// 空の行をいくつか追加します
->append('')
// 行を選択します (両方を一度に)
->children()
// CSS クラスを両方の行に追加します
->addClass('table-row')
//ここで最初の行 (位置 0) を取得するだけです。
->eq(0)
// 最初の行にテーブル ヘッダーを追加します
->append('これはheader')
// 次の行に進みます
->next()
// この行にデータを追加します
->append(' ;これはデータです')
// すべてを HTML として書き出します
->writeHTML();
?>


上記のコードは次の HTML を生成します:

复制代码 代码如下:


< ;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">



QueryPath の例。


<テーブル id="my-table">
これはヘッダーです
これはデータです

これはテストページです


テストテキスト




これで、QueryPath がどのように機能するか理解できたはずです。ライブラリのコピーを入手して試してみてください。ソース コードとともに、QueryPath ライブラリのすべてのパブリック関数をカバーする HTML ファイルの素晴らしいバンドルが得られます (冗談ではありません)。他にも例はあります。
不错的东东!赶紧 它吧~~!
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。