你真的了解字符截取函数substr吗?php字符截取函数substr参数的6种情况分别是正正 负负 正负 负正 正无 负无, 总结就是负数表示位置。

发布时间 2023-11-16 17:05:33作者: smxjue

<?php
$str = '123456789abcd';
echo '<br/>';
echo '原字符:'.$str;
echo '<br/>';
// 情况1 正正++ 从指定位置开始截取3个
echo '1正正substr($str,0,3):'. substr($str,0,3); //123
echo '<br/>';
// 情况2 正负+- 截取倒数第三个为止
echo '2正负substr($str,0,-3):'.substr($str,0,-3); //123456789a
echo '<br/>';
// 情况3 负正-+ 倒数第三个 开始截取3个
echo '3负正substr($str,-3,3):'.substr($str,-3,3); //bcd

echo '<br/>';
//情况4 负负 --有点晕吧 此时两个都是位置 和array_slice 有相同之处
echo '4负负substr($str,-3,-2):'.substr($str,-3,-2); //b
echo '<br/>';
echo '5正无substr($str,3):'.substr($str,3); //456789abcd
echo '<br/>';
echo '6负无substr($str,-3):'.substr($str,-3); //bcd
echo '<br/>';
//如果第二个负数越界了 则返回空
echo '越界正负 substr($str,9,-5):'.substr($str,9,-5); //空
echo '<br/>';
echo '越界负负 substr($str,-3,-5):'.substr($str,-3,-5);//空
echo '<br/>';