*

DOMオブジェクト、find関数、foreach文

公開日: : 最終更新日:2015/06/27 PHPで実際開発して

 

*プログラムリストはこのページの最後にあります。

前段(参考)

htmlファイルのオブジェクトを取り出して、1つ1つ処理をする。
オブジェクト:htmlの中のタグ
例:タグ”a”,”img”,””,”td”,”id”などかなりの数ある。

 

ドキュメントオブジェクトモデル(DOM)とは?

HTML 文書は、「タグ」「属性」「値」「文書」などの部品で構成されています。
HTML 文書がブラウザに読み込まれると、JavaScript 内でこれらの部品1つ1つが「DOM オブジェクト」として自動的に生成されます。

 

 

イメージ:「引っ越しの整理」(このページの最後にサンプルプログラム掲載)
引っ越した時、引っ越し先で待っていてトラックが来た。

 

箪笥から歯ブラシまで、何でも入っている。
そのトラックが、$html。

 

とりあえず、洋服だけ取り出したい。
「洋服」と書いてある段ボール箱だけ、トラックから降ろした。

 

$c=$html->find(‘img’);

 

 

その、取り出した洋服の段ボールに、No1から番号を書いていく

foreach($c as $value){

または

foreach($c as $key => $element){

 

 

さらに、洋服段ボールの中の「半そで」だけ1つづつ取り出す。

 

右辺を左辺に代入する
$src[$key] = $element->src;

 

参照:foreach文の例2つ

foreach文

foreach が使えるのは配列とオブジェクトだけ。この場合は、DOMオブジェクトをforeach文を使って取り出している。

 

(1)foreach (array_expression as $value)
array_expressionで指定した配列に 関してループ処理を行います。
各反復において現在の要素の値が $valueに代入され、
内部配列ポインタが一つ前に 進められます。
(よって、次の反復では次の要素を見ることになります。)

 

<?PHP
include_once('simple_html_dom.php');
$html = file_get_html('http://www.yahoo.co.jp/');
$src = array();

$c=$html->find('a');

foreach($c as $value){
	echo $value . '<br />';
}

?>

(2)foreach (array_expression as $key => $value)
各反復で現在の要素のキーを変数 $keyに代入します。

<?PHP
include_once('simple_html_dom.php');
$html = file_get_html('http://www.yahoo.co.jp/');
$src = array();

$c=$html->find('img');

foreach($c as $key => $element){
	$src[$key] = $element->src;
	echo $src[$key] . '<br />';
}
?>



 

 

 

 

スポンサーリンク

 

 

 

 

関連記事

simple_html_dom.phpがおかしい

僕のメモです。 原因不明ですが、スクレイピングをsimple_html_dom.phpでしよう

記事を読む

where 条件の中に、変数 を指定する

  僕のメモです   1.like の場合(部分一致)

記事を読む

no image

PHPをインストールする時、いつも忘れる事(short_open_tag)

一般的なマニュアルだと、以下の2箇所の修正で ApacheがPHPファイルを認識する。 1.h

記事を読む

MySQLのUNIQUEKEY制約を設定について

これは僕のメモです。 この質問を参考に。 http://q.hatena.ne.jp

記事を読む

データベースを配列に入れて、その中で範囲指定する

約600あるレコードのうち、 100から200の間のレコードだけ表示させる、 結構てこづりました

記事を読む

no image

行列世代と配列

PHPを勉強してみて思う事 僕らの世代は、「行列」を習っている。 今、ネット用のプログラム書こう

記事を読む

阪神タイガース関連新聞記事のTweetとHtmlタグ

  これは、僕のメモです。 1.前提その1: まず、プログラム動かす

記事を読む

no image

「->」の意味がわかれば、PHP半分わかったも同じ。

バッチ系のプログラムの書き屋(VB)だった僕が、 どうしてもわからないこと。 感覚的に理解できな

記事を読む

no image

pearがインストールできない。

エラーの内容は以下の通りです。 C:\php5>go-pear.bat interna

記事を読む

@file_get_html($address)でもエラーになる

これは、僕のメモです。これは、僕のメモです。   これは、僕のメモです。

記事を読む

CSSの変更をChromeにすぐ反映させる方法

これは、僕自身のメモです。   『スーパーリロー

サイトマップ送信時エラー

これは、僕自身のメモです。 「サイトマップを読み込めませんでした

プレースホルダ(プリペアド・ステートメント)で2つのテーブルを比較するときの注意

これは、自分のメモです。(自分の勉強用フォルダren/ren112.p

@file_get_html($address)でもエラーになる

これは、僕のメモです。これは、僕のメモです。  

simple_html_dom.phpがおかしい

僕のメモです。 原因不明ですが、スクレイピングをsimple_h

→もっと見る

PAGE TOP ↑