人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPのsimple_html_dom.phpを使用して以下の出力結果になったのですが、
そこから、以下のような配列を作成したいのですが
どうしたら可能でしょうか?

出力結果:
<td colspan=6 width=600 nowrap><span class="sz12_b"><font color="#ff9900">■</font>都市・空港検索の結果</span></td><td colspan=6 width=600 nowrap class="sz12"><font color="#ff0000">1件</font>該当がありました。</td><td width=50 align="center" class="sz12">YZV</td><td width=50 align="center" class="sz12red">YZV</td><td width=100 class="sz12">カナダ<br>(CA)</td><td width=100 class="sz12">ケッベク<br>(PQ)</td><td width=150 class="sz12">セチール<br>(SEPT-ILES)</td><td width=150 class="sz12">セチール<br>(SEPT ILES MUNICIPAL)</td>[

求める配列:
array(
"AAAA" => "カナダ",
"BBBB" => "ケッベク",
"CCCC" => "セチール",
"DDDD" => "セチール",
)

どうか、皆様のお力を貸して頂けませんでしょうか?
以上、よろしくお願いします。

●質問者: hopefully
●カテゴリ:就職・転職 ウェブ制作
✍キーワード:Ca PHP PQ カナダ 作成
○ 状態 :終了
└ 回答数 : 1/2件

▽最新の回答へ

1 ● kn1967
●60ポイント
<?php
# 取得した結果が$aに入っているものとする
$a = '<td colspan=6 width=600 nowrap><span class="sz12_b"><font color="#ff9900">■</font>都市・空港検索の結果</span></td>
< td colspan=6 width=600 nowrap class="sz12"><font color="#ff0000">1件</font>該当がありました。</td>
<td width=50 align="center" class="sz12">YZV</td>
<td width=50 align="center" class="sz12red">YZV</td>
<td width=100 class="sz12">カナダ<br>(CA)</td>
<td width=100 class="sz12">ケッベク<br>(PQ)</td>
<td width=150 class="sz12">セチール<br>(SEPT-ILES)</td>
<td width=150 class="sz12">セチール<br>(SEPT ILES MUNICIPAL)</td>
';

# 抽出
preg_match_all('/"sz12">([^<]+)<br/i', $a, $b);

# 出力その1
print_r($b[1]);

# とりあえずAAAAからZZZZまで準備
$c = array("AAAA", "BBBB", "CCCC", "DDDD", "EEEE", "FFFF", "GGGG", "HHHH",
 "IIII", "JJJJ", "KKKK", "LLLL", "MMMM", "NNNN", "OOOO", "PPPP", "QQQQ", 
 "RRRR", "SSSS", "TTTT", "UUUU", "VVVV", "WWWW", "XXXX", "YYYY", "ZZZZ");

# 連想配列作成
$d = array();
$e = count($b[1]);
for($i=0; $i<$e; $i++){
 $d[$c[$i]] = $b[1][$i];
}

# 連想配列作成(php5の場合:動作は未検証)
/*
 array_splice($c, count($b[1]);
 $d = array_combine($c, $b[1]);
*/

# 出力その2
print_r($d);
?>

AAAAなどのキーは不要ということであれば、出力その1まででOK。

それ以下はキーをつけるための処理。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ