php 常用字符串函数总结


Posted in PHP onMarch 15, 2008

1.格式化输出

chop 是rtrim()的别名;

ltrim()
trim()

nl2br()将\n转换成<br>

print,echo,printf(),sprintf():

echo()不是函数,print()是函数,有返回值,boolen,false,true;

printf()格式化输出

--函数,把文字格式化以后输出,直接调用系统调用进行IO的,他是非缓冲的。如:
$name="hunte";
$age=25;
printf("my name is %s, age %d", $name, $age);

sprintf()格式化字符串,然后赋给一个变量,但是不输出,类似于c了

<?php 
echo nl2br("foo isn't\n bar"); 
echo "foo isn't\n bar"; 
?>

--跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样。如:
char sql[256];
sprintf(sql,"select * from table where no = '%s'",bankno);
它的功能只是把""里面的语句赋给了变量sql。

strtolower
strtoupper
ucwords
ucfirst

2.字符串的连接和分割

(1)array explode(string input ,string separator , int limit)

使用一个字符串分割另一个字符串

<?php 
// 示例 1 
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6"; 
$pieces = explode(" ", $pizza); 
echo $pieces[0]; // piece1 
echo $pieces[1]; // piece2 

// 示例 2 
$data = "foo:*:1023:1000::/home/foo:/bin/sh"; 
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data); 
echo $user; // foo 
echo $pass; // * 
?>

例子2. limit 参数示例

<?php 
$str = 'one|two|three|four'; 

// 正数的 limit 
print_r(explode('|', $str, 2)); 

// 负数的 limit 
print_r(explode('|', $str, -1)); 
?>

string strtok( string input ,string separator)

<?php 
$string = "This is\tan example\nstring"; 
/* Use tab and newline as tokenizing characters as well */ 
$tok = strtok($string, " \n\t"); 

//拿着空格,\n,\t作为令牌分割字符串 

while ($tok !== false) { 
echo "Word=$tok<br />"; 
$tok = strtok(" \n\t"); 
} 
?>

结果:

Word=This
Word=is
Word=an
Word=example
Word=string

(2.)字符串的截取

$test="Your customer service is excellent"; 
echo substr($test,1);////////our customer service is excellent 
echo "<br>"; 
echo substr($test,-9);//////从末尾起长度是9excellent 
echo "<br>"; 
echo substr($test,0,4);////从0位置开始长度是4Your 
echo "<br>"; 
echo substr($test,5,-13);/从第四个开始到倒数第13个字符customer service 
echo "<br>"; 

$test="Your customer service is excellent"; 
echo substr($test,1); 
echo "<br>"; 
echo substr($test,-11); 
echo "<br>"; 
echo substr($test,0,6); 
echo "<br>"; 
echo substr($test,5,-13); 
echo "<br>";

our customer service is excellent
s excellent
Your c
customer service

(3)join()字符串的链接

3.字符串的查找

(1)string strstr ( string haystack, string needle ) 别名:strchr,stristr和strstr类似不同在于不区分大小写

strrchr()相反的,查找的是最后一次出现的字符串

第一次出现起的字符串

<?php 
$email = 'user@example.com'; 
$domain = strstr($email, '@'); 
echo $domain; // prints @example.com 
?> 
$email = 'user@example.com'; 
$domain =strstr($email,'e'); 
$domain2 =strrchr($email,'e');//最后一次出现起的字符串 
echo $domain; 
echo "<br>"; 
echo $domain2;

er@example.com
e.com

(2)查找位置

int strpos(string str,string needle,[int offset]) 没有找到返回的是false

返回从offset开始在str中查找needle的位置

$eg:$t-'hello world';

echo strpos($t,'o',5);

//7 从第o开始,查找o这个变量的位置,结果为7

int strrpos()

5.替换

str_replace("%body%","blank","<body text='%body%'")

6 。大写小问题

Strpos
查找字符串中第一次出现的字符串的位置

Strrpos
查找字符串中某字符,继第一次之后的最先出现的位置。

strpos(stripos无大小写)
strrpos(strripos无大小写)

strstr
stristr(无大小写)

str_replace
str_ireplace(无大小写)

PHP 相关文章推荐
模板引擎Smarty深入浅出介绍
Dec 06 PHP
PHP中usort在值相同时改变原始位置问题的解决方法
Nov 27 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
Jun 26 PHP
PHP base64编码后解码乱码的解决办法
Jun 19 PHP
ThinkPHP 表单自动验证运用示例
Oct 13 PHP
php使用sql server验证连接数据库的方法
Dec 25 PHP
PHP判断一个字符串是否是回文字符串的方法
Mar 23 PHP
详解WordPress中添加和执行动作的函数使用方法
Dec 29 PHP
php的socket编程详解
Nov 20 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
Feb 21 PHP
php str_replace的替换漏洞
Mar 15 #PHP
PHP执行速率优化技巧小结
Mar 15 #PHP
请php正则走开
Mar 15 #PHP
可以在线执行PHP代码包装修正版
Mar 15 #PHP
PHP Token(令牌)设计
Mar 15 #PHP
php项目打包方法
Feb 18 #PHP
PHP4与PHP5的时间格式问题
Feb 17 #PHP
You might like
php在项目中寻找代码的坏味道(综艺命名)
2012/07/19 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
RR vs IO BO3 第一场2.13
2021/03/10 DOTA
用ADODB.Stream转换
2007/01/22 Javascript
jquery 使用点滴函数代码
2011/05/20 Javascript
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
2012/02/03 Javascript
判断是否安装flash player及当前版本的JS代码
2013/08/08 Javascript
讨论html与javascript在浏览器中的加载顺序问题
2013/11/27 Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
2013/12/25 Javascript
使用jQuery实现返回顶部
2015/01/26 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
JS/jQuery实现DIV延时几秒后消失或显示的方法
2018/02/12 jQuery
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
解决vue 退出动画无效的问题
2020/08/09 Javascript
Flask SQLAlchemy一对一,一对多的使用方法实践
2013/02/10 Python
初步认识Python中的列表与位运算符
2015/10/12 Python
django如何连接已存在数据的数据库
2018/08/14 Python
python for循环remove同一个list过程解析
2019/08/14 Python
python try except返回异常的信息字符串代码实例
2019/08/15 Python
pd.DataFrame统计各列数值多少的实例
2019/12/05 Python
tensorflow没有output结点,存储成pb文件的例子
2020/01/04 Python
Django-imagekit的使用详解
2020/07/06 Python
使用python将微信image下.dat文件解密为.png的方法
2020/11/30 Python
Omio法国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/13 全球购物
初中生自我鉴定
2014/02/04 职场文书
教师现实表现材料
2014/02/14 职场文书
初中班主任经验交流材料
2014/05/16 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
小学一年级数学教学计划
2015/01/20 职场文书
中考学习决心书
2015/02/04 职场文书
PHP中多字节字符串操作实例详解
2021/08/23 PHP
最新动漫情报:2022年7月新番定档超过30部, OVERLORD骨王第四季也在其中噢
2022/05/04 日漫