本文实例讲述了PHP字符串中抽取子串操作。分享给大家供大家参考,具体如下:
问题
希望从字符串的某个特定位置开始抽取这个字符串的一部分。例如,对于输入到一个表单的用户名,想要得到这个用户名的前8个字符。
解决
使用substr()选择子串
$substring = substr($string,$start,$length); $username = substr($_GET['username'],0,8);
讨论
1.如果$strart和$length都是正数,substr()会返回字符串从$start开始的$lenfth个字符。字符的第一个位置为0。
echo substr('I Love PHP!',3,5);
ove P
如果忽略$length,substr()会返回从$strart到原字符串末尾的子串。
起始位置为正数,未指定长度
echo substr('I Love PHP!',3);
ove PHP!
如果$start大于字符串的长度,substr()将会返回false
如果$start加 $length 超过了字符串末尾,substr()将返回从$start开始到字符串末尾的所有字符
echo substr('I Love PHP!',3,9);
ove PHP!
如果 $start 为负数, substr() 会从字符串末尾倒数来确定子串从哪里开始
echo substr('I Love PHP!',-4);
PHP!
echo substr('I Love PHP!',-4,3);
PHP
如果 $start 值为负数,而且超过了字符串的开始位置, substr() 就会把 $start 当作 0 来处理
如果 $length 为负数, substr() 会从字符串末尾倒数来确定到哪里结束
echo substr('I Love PHP!',3,-1);
Love PHP
echo substr('I Love PHP!',-4,-2);
PH
参见
substr() 的有关文档
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
问题内容: 我有一个HTML字符串,我想检查一下其中是否有任何链接,如果有,请将它们提取出来并将它们放入数组中。我可以使用其选择器的简单性在jQuery中进行此操作,但是我找不到在PHP中使用的正确方法。 例如,字符串可能如下所示: 我如何(在PHP中)将其转换为类似于以下内容的数组: 谢谢,伊恩 问题答案: 您可以使用PHPs 库解析XML和/或HTML。如下所示的方法应该可以解决问题,以便从H
substr key start end 返回截取过的key的字符串值,注意并不修改key的值。下标是从0开始的
GETRANGE key start end 返回key 中字符串值的子字符串,字符串的截取范围由start 和end 两个偏移量决定(包括start 和end 在内)。可以使用负值,字符串右面下标是从-1开始的。 注意返回值处理: 1: start>=length, 则返回空字符串 2: stop>=length,则截取至字符结尾 3: 如果start 所处位置在stop右边, 返回空字符串
前言 忙活了一个礼拜,终于等到周末,可以空下来写点东西。 之前已经完成《数值运算》和《布尔运算》,这次轮到介绍字符串操作 。咱们先得弄明白两个内容: 什么是字符串? 对字符串有哪些操作? 下面是"在线新华字典"的解释: 字符串:简称“串”。有限字符的序列。数据元素为字符的线性表,是一种数据的逻辑结构。在计算机中可有不同的存储结构。在串上可进行求子串、插入字符、删除字符、置换字符等运算。 而字符呢?
字符串操作 函数 char * rt_strstr (const char *s1, const char *s2) 判断字符串 rt_uint32_t rt_strcasecmp (const char *a, const char *b) 忽略大小写比较字符串 char * rt_strncpy (char *dst, const char *src, rt_ubase_
SETRANGE key offset value 用value 参数覆写(overwrite)给定key 所储存的字符串值,从偏移量offset 开始。 不存在的key 当作空白字符串处理。可以用作append: 注意: 如果偏移量>字符长度, 该字符自动补0x00,注意它不会报错