php按条件读取txt广本内容,该如何解决
程序员文章站
2022-05-24 22:13:35
...
php按条件读取txt广本内容
我现在有个记事本,内容:
articles
The research articles in all journals published by BioPublisher are 'Open Access'. They are immediately and permanently available online without charge. A number of journals require an institutional or a personal subscription to view other content, such as reviews or paper reports. Free trial subscriptions to these journals are available.
about
tel:********************** address:*************************************
我现在就用PHP读取这个记事本,因为这个里有好段,每段前都有一个标题,我现在就想通过前面的标题,读取出不同的内容。
请高手给出指教。
------解决方案--------------------
逻辑不对,explode之后的数组元素是不包含@的
修改如下:
我现在有个记事本,内容:
articles
The research articles in all journals published by BioPublisher are 'Open Access'. They are immediately and permanently available online without charge. A number of journals require an institutional or a personal subscription to view other content, such as reviews or paper reports. Free trial subscriptions to these journals are available.
about
tel:********************** address:*************************************
我现在就用PHP读取这个记事本,因为这个里有好段,每段前都有一个标题,我现在就想通过前面的标题,读取出不同的内容。
请高手给出指教。
------解决方案--------------------
逻辑不对,explode之后的数组元素是不包含@的
修改如下:
- PHP code
"; echo $buffer."
"; }else{ echo "This is body
"; echo $buffer."
"; } } fclose($fp); //关闭文件流 ?>
------解决方案--------------------
//标题前加个@符号,用这个来分隔,注意 @ 要顶格
- PHP code
$find = 'about'; //要找的标题 $file_name="dir.txt"; $fp=fopen($file_name,'r'); $title = ''; $content = ''; while($buffer = fgets($fp,1024)) //文件不一定要读完 { if($buffer{0} == '@') { //检查是否为标题 if($title == $find) break; //是要的则退出 $title = trim($buffer, '@'.PHP_EOL); //保存标题 $content = ''; //清空内容 } else $content .= $buffer; //保存内容 } fclose($fp); //关闭文件流 echo content."
";
------解决方案--------------------
如果标题有固定规律的话,读一行,然后检查是不是标题
比如这一行要没有空格 长度少一多少 等等
------解决方案--------------------
帮忙顶下....相关文章
相关视频
上一篇: MongoDB权威指南第01章简介
下一篇: Python实现的ini文件操作类分享