我需要使用电子邮件中的其他图片生成HTML文件
使用php_imap
<img alt="" src="cid:part3.08050603.09060803@example.com">
我有多个img
代码,但是如何从电子邮件中提取实际图像部分cid:part3.08050603.09060803@example.com
并将其另存为文件?
答案 0 :(得分:1)
您可以使用DomDocument
和DOMXpath
来查询图片src
。
$doc = new DOMDocument();
$doc->loadHTML($email); //load the string into DOMDocument
$selector = new DOMXPath($doc); //create a new domxpath instance
$images = $selector->query('//img/@src'); //Query the image tag and get the src
foreach ($images as $item) {
echo $item->value; //grab the value (output: cid:part3.08050603.09060803@example.com)
}
现在您已经抓住了图像源,您可以将内容写入文件。这确实意味着您需要allow_url_fopen
。
foreach ($images as $item) {
$content = file_get_contents($item->value);
file_put_contents('./'.str_replace("/", "-", ltrim(parse_url($item->value)['path'],'/')), $content );
}
答案 1 :(得分:0)