• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php按条件读取txt广本内容,该如何解决

php 搞代码 3年前 (2022-01-23) 11次浏览 已收录 0个评论

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之后的数组元素是不包含@的
修改如下:

PHP code

<?php$file_name="dir.txt";$fp=fopen($file_name,'r');while(!feof($fp)) //文件全部要读完{    $buffer=fgets($fp); //获得一行,不要加长度    if(preg_match('/\s*@/i', $buffer)){// 用正则        echo "This is title<br>";        echo $buffer."<br>";    }else{        echo "This is body<br>";        echo $buffer."<br>";    }}fclose($fp); //关闭文件流?><br /><font color='#e78608'>------解决方案--------------------</font><br />//标题前加个@符号,用这个来分隔,注意 @ 要顶格<br /><br /><dl class='code'>PHP code<pre class="prettyprint linenums">$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 $<i>1本文来#源gaodai$ma#com搞$代*码*网</i><pre>搞代gaodaima码

content .= $buffer; //保存内容}fclose($fp); //关闭文件流echo content.”
“;
——解决方案——————–
如果标题有固定规律的话,读一行,然后检查是不是标题

比如这一行要没有空格 长度少一多少 等等
——解决方案——————–
帮忙顶下….


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php按条件读取txt广本内容,该如何解决
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址