この章では、コア PHP を使用して HTML ファイルを生成する方法を学びましょう
最近、php.net にクエリを実行したときに、DOMDocument クラスが XML または HTML ファイルの生成に使用でき、XML/HTML タグを生成してそれらをファイルに挿入する一連のメソッドを提供していることがわかりました。 DOM がどのように生成されるかを見てみましょう
まず、以下の図に示すように、提供されるメソッドによって生成される効果を見てみましょう:
1. 新しい DOM ファイルを作成します
コードをコピーします コードは次のとおりです:
//DOMDocumentクラスをインスタンス化し、バージョン番号を指定します
$dom = 新しい DOMDocument('1.0');
//生成されたタグまたはコードをページに出力します
echo $dom->saveHTML();
2. DOM ファイルに新しい HTML 要素を追加します
コードをコピーします コードは次のとおりです:
$css_text = 'p{color:#ff00ff;}';
//新しいスタイルタグとCSSコンテンツを作成します
$style = $dom->createElement('style', $css_text);
//スタイルタグをDOMファイルに追加します
$dom->appendChild($style);
//以下は出力エフェクトです
<スタイル>
p{color:#ff00ff;}
ここで言及する必要があるのは、
コードをコピーします
コードは次のとおりです:
$p_text = 'これは段落です。';
// 新しい p タグとコンテンツを作成します
$p = $dom->createElement('p', $p_text);
// 新しい属性 'id' を作成します
$domAttribute = $dom->createAttribute('id');
//属性「id」に値を追加します
$domAttribute->value = '説明';
//この属性を p タグに追加します
$p->appendChild($domAttribute);
// DOM ファイルに p タグを追加します
$dom->appendChild($p);
//以下は出力エフェクトです
ある日
4. フォーム要素を追加します
テキストボックスを追加します
コードをコピーします
コードは次のとおりです:
$input = $dom->createElement('input');
$domAttribute = $dom->createAttribute('type');
$domAttribute->value = 'テキスト';
$input->appendChild($domAttribute);
$domAttribute = $dom->createAttribute('name');
$domAttribute->value = '電子メール';
$input->appendChild($domAttribute);
$dom->appendChild($input);
//以下は出力エフェクトです
5. テーブルを作成する
コードをコピーします
コードは次のとおりです:$table = $dom->createElement('table');
$domAttribute = $dom->createAttribute('id');
$domAttribute->value = 'my_table';
$tr = $dom->createElement('tr');
$table->appendChild($tr);
$td = $dom->createElement('td', 'ラベル');
$tr->appendChild($td);
$td = $dom->createElement('td', 'Value');
$tr->appendChild($td);
$table->appendChild($domAttribute);
$dom->appendChild($table);
//以下は出力エフェクトです
<テーブル id="my_table">
<みんな>
ラベル |
表>
最後に、
完全でより複雑な例を見てみましょう:
コードをコピーします コードは次のとおりです:
$dom = 新しい DOMDocument('1.0');
//CSS コンテンツ
$css_text = '';
$css_text .= 'body{width:285px;margin:auto;margin-top:50px;}';
$css_text .= '#my_table{border:1px ソリッド #ececec;}';
$css_text .= '#my_table th{border:1px ソリッド #ececec;padding:5px;text-decoration:underline;}';
$css_text .= '#my_table td{border:1px ソリッド #ececec;padding:5px;}';
$css_text .= '#my_table td:first-child{text-align:right;color:#333333;font-weight:bold;color:#999999;}';
//新しいスタイルタグとCSSコンテンツを作成します
$style = $dom->createElement('style', $css_text);
// 新しい属性 'type' を作成します
$domAttribute = $dom->createAttribute('type');
//属性 'type' に値を追加します
$domAttribute->value = 'text/css';
//この属性をスタイルタグに追加します
$style->appendChild($domAttribute);
//スタイルタグをDOMファイルに追加します
$dom->appendChild($style);
//フォームを追加
$form = $dom->createElement('form');
$dom->appendChild($form);
$formAttribute = $dom->createAttribute('メソッド');
$formAttribute->value = '投稿';
$form->appendChild($formAttribute);
//テーブルを追加します
$table = $dom->createElement('table');
$tableAttribute = $dom->createAttribute('id');
$tableAttribute->value = 'my_table';
$table->appendChild($tableAttribute);
//新しい行を追加します
$tr = $dom->createElement('tr');
$table->appendChild($tr);
//新しい列(列)を追加します
$th = $dom->createElement('th', 'PHP を使用して HTML を生成');
$tr->appendChild($th);
$thAttribute = $dom->createAttribute('colspan');
$thAttribute->value = '2';
$th->appendChild($thAttribute);
//新しい行を追加します
$tr = $dom->createElement('tr');
$table->appendChild($tr);
//新しい列(列)を追加します
$td = $dom->createElement('td', '名');
$tr->appendChild($td);
//新しい列(列)を追加します
$td = $dom->createElement('td');
$tr->appendChild($td);
//input要素をcolumn(column)に追加します
$input = $dom->createElement('input');
$td->appendChild($input);
$tdAttribute = $dom->createAttribute('type');
$tdAttribute->value = 'テキスト';
$input->appendChild($tdAttribute);
$tdAttribute = $dom->createAttribute('name');
$tdAttribute->value = 'f_name';
$input->appendChild($tdAttribute);
// 新しい行を追加します
$tr = $dom->createElement('tr');
$table->appendChild($tr);
//新しい列(列)を追加します
$td = $dom->createElement('td', 'メール');
$tr->appendChild($td);
//新しい列(列)を追加します
$td = $dom->createElement('td');
$tr->appendChild($td);
//input要素をcolumn(column)に追加します
$input = $dom->createElement('input');
$td->appendChild($input);
$tdAttribute = $dom->createAttribute('type');
$tdAttribute->value = 'テキスト';
$input->appendChild($tdAttribute);
$tdAttribute = $dom->createAttribute('name');
$tdAttribute->value = '電子メール';
$input->appendChild($tdAttribute);
//新しい行を追加します
$tr = $dom->createElement('tr');
$table->appendChild($tr);
//新しい列(列)を追加します
$td = $dom->createElement('td', '性別');
$tr->appendChild($td);
//新しい列(列)を追加します
$td = $dom->createElement('td');
$tr->appendChild($td);
//input要素をcolumn(column)に追加します
$select = $dom->createElement('select');
$td->appendChild($select);
$tdAttribute = $dom->createAttribute('name');
$tdAttribute->value = '性別';
$select->appendChild($tdAttribute);
// [選択] ドロップダウン ボックスにオプションを追加します
$opt = $dom->createElement('オプション', '男性');
$domAttribute = $dom->createAttribute('value');
$domAttribute->value = '男性';
$opt->appendChild($domAttribute);
$select->appendChild($opt);
$opt = $dom->createElement('オプション', '女性');
$domAttribute = $dom->createAttribute('value');
$domAttribute->value = '女性';
$opt->appendChild($domAttribute);
$select->appendChild($opt);
// 新しい行(行)を追加
$tr = $dom->createElement('tr');
$table->appendChild($tr);
// 新しい列を追加
$td = $dom->createElement('td', 'Interest');
$tr->appendChild($td);
// 新しい列を追加
$td = $dom->createElement('td');
$tr->appendChild($td);
//追加入力 元素到列(column)中
$radio = $dom->createElement('input');
$td->appendChild($radio);
$radAttribute = $dom->createAttribute('type');
$radAttribute->value = 'ラジオ';
$radio->appendChild($radAttribute);
$radAttribute = $dom->createAttribute('name');
$radAttribute->value = '興味';
$radio->appendChild($radAttribute);
$radAttribute = $dom->createAttribute('id');
$radAttribute->value = 'php';
$radio->appendChild($radAttribute);
$label = $dom->createElement('label', 'PHP');
$labelAttribute = $dom->createAttribute('for');
$labelAttribute->value = 'php';
$label->appendChild($labelAttribute);
$td->appendChild($label);
$radio = $dom->createElement('input');
$td->appendChild($radio);
$radAttribute = $dom->createAttribute('type');
$radAttribute->value = 'ラジオ';
$radio->appendChild($radAttribute);
$radAttribute = $dom->createAttribute('name');
$radAttribute->value = '興味';
$radio->appendChild($radAttribute);
$radAttribute = $dom->createAttribute('id');
$radAttribute->value = 'jquery';
$radio->appendChild($radAttribute);
$label = $dom->createElement('label', 'jQuery');
$labelAttribute = $dom->createAttribute('for');
$labelAttribute->value = 'jquery';
$label->appendChild($labelAttribute);
$td->appendChild($label);
// 新しい行(行)を追加
$tr = $dom->createElement('tr');
$table->appendChild($tr);
// 新しい列を追加
$td = $dom->createElement('td');
$tr->appendChild($td);
$tdAttribute = $dom->createAttribute('colspan');
$tdAttribute->value = '2';
$td->appendChild($tdAttribute);
//追加入力 元素到列(column)中
$input = $dom->createElement('input');
$td->appendChild($input);
$tdAttribute = $dom->createAttribute('type');
$tdAttribute->value = '送信';
$input->appendChild($tdAttribute);
$tdAttribute = $dom->createAttribute('value');
$tdAttribute->value = 'サインアップ';
$input->appendChild($tdAttribute);
//テーブルからフォーム中へ追加
$form->appendChild($table);
echo $dom->saveHTML();
http://www.bkjia.com/PHPjc/824813.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/824813.html技術記事この一章の节里で、私は核心 (core) PHP を利用して HTML 文書を生成する方法を理解しました。最近私が在查询 php.net 的時期,発行 DOMDocument 这个类非常に有意思,可以...