php如何对文件做处理,并提取内容生成文件?

原创
2016-06-23 14:26:13 682浏览

php生成文件 php

这是一个原html文件

nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档







这是一个被处理过的html文件


nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档








然后提取内容片段,生成分别生成以下三个文件、


提取这个部分,生成 head.html

nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">




无标题文档








提取这个部分,生成 index.html

















提取这个部分,生成 foot.html








回复讨论(解决方案)

$s =无标题文档




HTML;preg_match_all('/.*?/is', $s, $r);print_r($r[0]);
得到
Array(    [0] => nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档
[1] =>




[2] =>
)

写到文件
$fn = array('head.html', ' index.html', 'foot.html');foreach($r[0] as $i=>$s)  file_put_contents($fn[$i], $s);

$s =无标题文档




HTML;$ar = preg_split("/(\s+|\r?\n\s\r?\n)/s", $s, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);$d = array(PHP_EOL.'', ''.PHP_EOL);foreach($ar as $i=>$v) { if($i) echo $d[$i%2]; echo $v;}echo $d[0];
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档




声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。