现在的位置: 首页 > 综合 > 正文

PHP中substr()函数的实例详解

2013年08月07日 ⁄ 综合 ⁄ 共 968字 ⁄ 字号 评论关闭

原型:string substr ( string $string , int $start [, int $length ] ),它可以用于在一个较长的字符串中查找匹配的字符串或字符。$string为所要处理的字符串,$start为开始选取的位置,$length为要选取的长度(当它是负数时为负数时表示右起数起的位置)。
例:
<?php
$rest1 = substr("abcdef", 0, 0); // returns ""
$rest2 = substr("abcdef", 0, 2); // returns "ab"
$rest3 = substr("abcdef", 0, -1); // returns "abcde"
$rest4 = substr("abcdef", 2,0); // returns ""
$rest5 = substr("abcdef", 2,2); // returns "cd"
$rest6 = substr("abcdef", 2, -1); // returns "cde"
$rest7 = substr("abcdef", -2,0); // returns ""
$rest8 = substr("abcdef", -2,2); // returns "ef"
$rest9 = substr("abcdef", -3,-1); // returns "de"
?>
$start如果为非负数,在字符串中以0为开头从左向右开始记数,[url=http://www.caoliushequ8.cn]草榴社区[/url]即0代表字符"a",1则代表字符"b",以此类推。如果是负数,在字符串中以1为开头从右向左开始记数,即-1代表字符"f",-2代表字符"e",同理也可以此类推。
当$length为正数时表示个数,为负数时表示右起数起的位置。
该函数在使用中有时也省略 $length,这个时候如果只用一个正数作为子字符串起点,将得到从起点到字符串结束的整个字符串。如果只用一个负数作为子字符串起点,将得到一个原字符串尾部的一个子字符串(也即字符个数等于该负数的绝对值)。其实原理和上述不省略$length时一样,只是不用再去判断所取字符的个数,单去判断起始位置就OK。
例:
<?php
$rest1 = substr("abcdef", 2); // returns "cdef"
$rest2 = substr("abcdef", -2); // returns "ef"
?>

抱歉!评论已关闭.