php如何截取两个字符串之间的内容

silandn 2017-11-29 04:28:16
我的网址是:http://www.abc.com/m.php?txt=txtread/网游小说/迟颜--金屋藏娇(网游).txt

我想m.php中截取txtread/和.txt之前的内容该怎么截取呢?

我是这么做的。
在m.php中:
$txtname = $_GET['txt'];
$txtname1 = getNeedBetween($txtname, 'txtread/' , '.txt' );

最后在
<?php
echo "$txtname1"
?>
但是运行出500错误。
...全文
521 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
笨狗先飞 2017-12-01
  • 打赏
  • 举报
回复

function midstr($str,$str1,$str2)
  {
    $result='';
    $l=strpos($str,$str1);
    if(is_numeric($l))
    {
      $str=substr($str,$l+mb_strlen($str1));
      $l=strpos($str,$str2);
      if(is_numeric($l)) $result=substr($str,0,$l);
    }
    return $result;
  }
小熊开发 2017-11-30
  • 打赏
  • 举报
回复
        $txtname = $_GET['txt'];
        preg_match('#txtread/(.+)\.txt#' ,  $txtname, $txtname1);
        echo $txtname1[1];
hongmei85 2017-11-29
  • 打赏
  • 举报
回复

$txtname = 'http://www.abc.com/m.php?txt=txtread/网游小说/迟颜--金屋藏娇(网游).txt';
$txtname1 = getNeedBetween($txtname, 'txtread/' , '.txt' );
var_dump($txtname1);
echo '<br/>';

function getNeedBetween($txtname, $start, $end){
  $i = strpos($txtname, $start);
  if(!$i){
    return false;
  }

  $i += strlen($start);

  $j = strpos($txtname, $end, $i);

  if(!$j){
    return false;
  }

  return substr($txtname, $i, $j-$i);
}
xuzuning 2017-11-29
  • 打赏
  • 举报
回复
给出 getNeedBetween 函数定义

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧