如何提取给出开始和结束位置的字符串部分?

时间:2010-10-05 14:11:33

标签: php string

如何提取给出开始和结束位置的字符串部分?

我知道有一个名为substr()的方法,但不是我正在寻找的东西(第三个参数是该部分的长度......)

3 个答案:

答案 0 :(得分:1)

如果你有开始和结束位置,那么长度就是结束 - 开始:

$string = "The quick brown fox jumped over the lazy dog";
$start = 4;
$end = 15;
substr($string, $start, $end - $start); //=> "quick brown"

http://www.ideone.com/LRfYT处查看此操作。

答案 1 :(得分:0)

如果您知道开始和结束位置,您只需减去以获得所需部件的长度。然后继续使用substr()

答案 2 :(得分:0)

以下将做你想做的事。

function ssubstr($string, $start, $end) {
    if ($end < 0) $length = strlen($string) + $end;
    else $length = $end - $start;
    return substr($string, $start, $length);
}

此方法对于$end的负值是安全的。

请注意,它不会执行任何错误检查