teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

5

改善

2016/09/17 21:52

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -1,4 +1,6 @@
1
1
  DomDocumentでやってみました。
2
+ HTMLから文字列を抽出する場合は、正規表現よりDomDocumentの方が便利で安全です。
3
+ 特にIDで取得するなら絶対に
2
4
  ```php
3
5
  <?php
4
6
  $html = '
@@ -25,4 +27,4 @@
25
27
  $img_src1 = $xpath->query('//*[@id="CAM1"]')[0]->getAttribute('src');
26
28
  $img_src2 = $xpath->query('//*[@id="CAM2"]')[0]->getAttribute('src');
27
29
  $img_src3 = $xpath->query('//*[@id="CAM3"]')[0]->getAttribute('src');
28
- ```
30
+ ```

4

誤植

2016/09/17 21:52

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -1,4 +1,4 @@
1
- DomDocumentmでやってみました。
1
+ DomDocumentでやってみました。
2
2
  ```php
3
3
  <?php
4
4
  $html = '

3

改善

2016/09/17 12:42

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -15,7 +15,7 @@
15
15
  ';
16
16
 
17
17
  $dom = new DOMDocument();
18
- @$dom->loadHTML($html);
18
+ $dom->loadHTML($html);
19
19
  $xpath = new DOMXPath($dom);
20
20
 
21
21
  $img_tag1 = $dom->saveHTML($xpath->query('//*[@id="CAM1"]')[0]);

2

改善

2016/09/17 12:17

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -18,9 +18,9 @@
18
18
  @$dom->loadHTML($html);
19
19
  $xpath = new DOMXPath($dom);
20
20
 
21
- $img_tag1 = $dom->saveXML($xpath->query('//*[@id="CAM1"]')[0]);
21
+ $img_tag1 = $dom->saveHTML($xpath->query('//*[@id="CAM1"]')[0]);
22
- $img_tag2 = $dom->saveXML($xpath->query('//*[@id="CAM2"]')[0]);
22
+ $img_tag2 = $dom->saveHTML($xpath->query('//*[@id="CAM2"]')[0]);
23
- $img_tag3 = $dom->saveXML($xpath->query('//*[@id="CAM3"]')[0]);
23
+ $img_tag3 = $dom->saveHTML($xpath->query('//*[@id="CAM3"]')[0]);
24
24
 
25
25
  $img_src1 = $xpath->query('//*[@id="CAM1"]')[0]->getAttribute('src');
26
26
  $img_src2 = $xpath->query('//*[@id="CAM2"]')[0]->getAttribute('src');

1

改善

2016/09/17 12:10

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -18,11 +18,11 @@
18
18
  @$dom->loadHTML($html);
19
19
  $xpath = new DOMXPath($dom);
20
20
 
21
- $img_tag1 = $dom->saveXML($xpath->query('//input[@id="CAM1"]')[0]);
21
+ $img_tag1 = $dom->saveXML($xpath->query('//*[@id="CAM1"]')[0]);
22
- $img_tag2 = $dom->saveXML($xpath->query('//img[@id="CAM2"]')[0]);
22
+ $img_tag2 = $dom->saveXML($xpath->query('//*[@id="CAM2"]')[0]);
23
- $img_tag3 = $dom->saveXML($xpath->query('//img[@id="CAM3"]')[0]);
23
+ $img_tag3 = $dom->saveXML($xpath->query('//*[@id="CAM3"]')[0]);
24
24
 
25
- $img_src1 = $xpath->query('//input[@id="CAM1"]')[0]->getAttribute('src');
25
+ $img_src1 = $xpath->query('//*[@id="CAM1"]')[0]->getAttribute('src');
26
- $img_src2 = $xpath->query('//img[@id="CAM2"]')[0]->getAttribute('src');
26
+ $img_src2 = $xpath->query('//*[@id="CAM2"]')[0]->getAttribute('src');
27
- $img_src3 = $xpath->query('//img[@id="CAM3"]')[0]->getAttribute('src');
27
+ $img_src3 = $xpath->query('//*[@id="CAM3"]')[0]->getAttribute('src');
28
28
  ```