如何使用php读取docx文件中图像的超链接以及页眉和页脚的内容?
Posted
技术标签:
【中文标题】如何使用php读取docx文件中图像的超链接以及页眉和页脚的内容?【英文标题】:How to read hyperlinks of image, and content of header and footer in docx file using php? 【发布时间】:2012-09-24 04:53:52 【问题描述】:我在使用 php 读取 docx 文件中的图像超链接时遇到问题。我也无法在同一个 docx 文件中读取页眉和页脚的内容。我发现 PHPDOCX 是处理 DOCX 文件的近邻,但我仍然找不到这个答案。 您的帮助将不胜感激。 提前谢谢你。
纳瓦拉杰
【问题讨论】:
【参考方案1】:不确定 docx,但它适用于 doc,请在下面尝试
function parseWord($userDoc)
$fileHandle = fopen($userDoc, "r");
$line = @fread($fileHandle, filesize($userDoc));
$lines = explode(chr(0x0D),$line);
$outtext = "";
foreach($lines as $thisline)
$pos = strpos($thisline, chr(0x00));
if (($pos !== FALSE)||(strlen($thisline)==0))
else
$outtext .= $thisline." ";
$outtext = preg_replace("/[^a-zA-Z0-9\s\,\.\-\n\r\t@\/\_\(\)]/","",$outtext);
return $outtext;
$text = parseWord("1.doc");
echo $text;
它将识别超链接,然后您可以使用简单的逻辑。页眉和页脚也被拉出
【讨论】:
感谢您的回复Joelle,我测试了上面的代码,发现它可以识别常规文本而不是图像内的超链接,是这样吗?以前我使用以下正则表达式进行正常的超链接检测。 $str = preg_replace( '/(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/i', '\4', $str);无论如何,非常感谢您的帮助。 好吧,我已经将它用于普通的文本解析......你当然可以修改正则表达式以使其适用于图像以上是关于如何使用php读取docx文件中图像的超链接以及页眉和页脚的内容?的主要内容,如果未能解决你的问题,请参考以下文章