AI写作智能体 自主规划任务,支持联网查询和网页读取,多模态高效创作各类分析报告、商业计划、营销方案、教学内容等。 广告
| substr截取字符串 | | | --- | --- | ``` * [substr(string, start, length)] [字符串截取] * @param [string] [需要截取的字符串] * @param [start] [开始截取的下标,为正数时,从0开始计算,从左到右;为负数时,从-1开始计算,从右到左;如果字符串长度<该参数,报FALSE] * @param [length] [截取的长度,为正数时,从参数start处开始计算长度; 为负数时,那么 string 末尾处的 length 个字符将会被省略(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回 FALSE; 为0,FALSE 或 NULL时,返回一个空字符串; 参数为空,直接截取到末尾] * @return [返回截取到的字符串,或者在失败时返回 FALSE] * Example #英文字符串截取 $str = 'www.baidu.com'; echo substr($str, 0, 1); #输出:w, 从下标0开始截取(包括下标0),再截取长度为1 echo substr($str, 1); #输出:ww.baidu.com, 从下标1开始截取(包括下标1),参数三为空则直接截取到最后 echo substr($str, -2); #输出:om, 从下标-2开始(包括下标-2),参数三为空则直接截取到最后 echo substr($str, 2, -2); #输出:w.baidu.c, 从下标2开始(包括下标2),截取到下标为-2 echo substr($str, -5, -2); #输出:u.c, 从下标-5开始(包括下标-5),截取到下标-2 #当截取中文字符串时很容易出现乱码,因为一个汉字是两个字节,而一个英文字母是一个字节,这是就需要用到mb_substr() ``` | mb_substr截取字符串 | | | --- | --- | ``` #开启php.ini里面extension=php_mbstring.dll扩展 * [mb_substr(string, start, length, encoding)] [字符串截取] * @param [string] [需要截取的字符串] * @param [start] [开始截取的下标,为正数时,从0开始计算,从左到右;为负数时,从-1开始计算,从右到左;如果字符串长度<该参数,报FALSE] * @param [length] [截取的长度,为正数时,从参数start处开始计算长度; 为负数时,那么 string 末尾处的 length 个字符将会被省略(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回 FALSE; 为0,FALSE 或 NULL时,返回一个空字符串; 参数为空,直接截取到末尾] * @param [encoding] [字符编码。如果省略,则使用内部字符编码] * @return [返回截取到的字符串,或者在失败时返回 FALSE] * Example $str = '中文字符串的截取'; echo mb_substr($str, 0); #输出:中文字符串的截取,从下标0开始(包括下标0),截取长度为到结尾 echo mb_substr($str, 1, 2); #输出:文字,从下标1开始(包括下标1),截取长度为2 echo mb_substr($str, -5, -2); #输出:符串的,从下标-5开始(包括下标-5,从右往左计算),截取到下标为-2(从右往左计算) ``` | strstr截取字符串 | | | --- | --- | ``` * [strstr(string, needle, before_needle)] [查找字符串的首次出现] * @param [string] [需要查找的字符串] * @param [needle] [如果 needle 不是一个字符串,那么它将被转化为整型并且作为字符的序号来使用] * @param [before_needle] [若为 TRUE,strstr() 将返回 needle 在 haystack 中的位置之前的部分] * @return [返回字符串的一部分或者 FALSE(如果未发现 needle)] * Example $str = 'www.baidu.com'; echo strstr($str, 'b', TRUE); #输出:www. , 加上true返回参数b之前的字符 echo strstr($str, 'b'); #输出:baidu.com , 不加参数true返回参数b之后的字符(包括参数b) ```