나는 줌라의 기사에서 첫 번째 이미지를 추출하고이 코드를 가지고 : 추출 줌라 기사의 모든 이미지
<?php preg_match('/<img (.*?)>/', $this->article->text, $match); ?>
<?php echo $match[0]; ?>
기사 및뿐만 아니라에서 사용할 수있는 모든 이미지를 추출하는 방법이 있나요 하나?
나는 줌라의 기사에서 첫 번째 이미지를 추출하고이 코드를 가지고 : 추출 줌라 기사의 모든 이미지
<?php preg_match('/<img (.*?)>/', $this->article->text, $match); ?>
<?php echo $match[0]; ?>
기사 및뿐만 아니라에서 사용할 수있는 모든 이미지를 추출하는 방법이 있나요 하나?
정규식을 사용하여 HTML을 구문 분석하지 않는 것이 좋습니다. libxml을 사용하는 appropiate parser (예 : DOMDocument::loadHTML)을 사용해야합니다.
그런 다음 원하는 태그를 쿼리 할 수 있습니다. 이런 식으로 뭔가 (안된) 작동하지 않을 수 있습니다 :
$doc = new DOMDocument;
$doc->loadHTML($htmlSource);
$xpath = new DOMXPath($doc);
$query = '//img';
$entries = $xpath->query($query);
foreach ($entries as $entry) {
// $entry->getAttribute('src')
}
preg_match_all을 사용하십시오. 그리고 패턴을 수정하여 img 태그 내에서 후행 '/'를 고려해야합니다.
$str = '<img src="asdf" />stuff more stuff <img src="qwerty" />';
preg_match_all('/<img (.*?)\/>/', $str, $matches);
print_r($matches);
Array
(
[0] => Array
(
[0] => <img src="asdf" />
[1] => <img src="qwerty" />
)
[1] => Array
(
[0] => src="asdf"
[1] => src="qwerty"
)
)
에서 지워지지 않습니다. 속성에 대한 액세스 권한이 있고 xpath가 작업을 수행하게하므로이 접근법을 좋아합니다. 당신도 먼저 대답 했으니 까. 고맙습니다 – themis
내가 다시 사용했다고 언급합니다. 나쁜 나는 다시는 좋아하지 않는다 : P – themis