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 相关文章推荐
PHP4实际应用经验篇(4)
Oct 09 PHP
php设计模式 Command(命令模式)
Jun 26 PHP
解析php如何将日志写进syslog
Jun 28 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
Jul 25 PHP
php实现图片局部打马赛克的方法
Feb 11 PHP
全面解读PHP的人气开发框架Laravel
Oct 15 PHP
PHP工程师VIM配置分享
Dec 15 PHP
php mysql_list_dbs()函数用法示例
Mar 29 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
Apr 03 PHP
PHP fprintf()函数用法讲解
Feb 16 PHP
PHP Ajax跨域问题解决方案代码实例
Aug 01 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
JQuery从头学起第三讲
2010/07/06 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
javascript结合html5 canvas实现(可调画笔颜色/粗细/橡皮)的涂鸦板
2013/04/27 Javascript
JS的千分位算法实现思路
2013/07/31 Javascript
JS中使用sort结合localeCompare实现中文排序实例
2014/07/23 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
2014/12/16 Javascript
js使用setTimeout实现定时炸弹的方法
2015/04/10 Javascript
js实现网页收藏功能
2015/12/17 Javascript
vue.js树形组件之删除双击增加分支实例代码
2017/02/28 Javascript
关于Node.js的events.EventEmitter用法介绍
2017/04/01 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
js判断复选框是否选中的方法示例【基于jQuery】
2019/10/10 jQuery
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
[01:06:39]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第三局
2016/03/02 DOTA
[01:12:27]EG vs Secret 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python中基本的日期时间处理的学习教程
2015/10/16 Python
python中强大的format函数实例详解
2018/12/05 Python
Python sys模块常用方法解析
2020/02/20 Python
python+gdal+遥感图像拼接(mosaic)的实例
2020/03/10 Python
python中sort sorted reverse reversed函数的区别说明
2020/05/11 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
Python多线程threading创建及使用方法解析
2020/06/17 Python
Keras-多输入多输出实例(多任务)
2020/06/22 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
详解CSS3 Media Queries中媒体属性的使用
2016/02/29 HTML / CSS
amazeui页面校验功能的实现代码
2020/08/24 HTML / CSS
Joie官方网上商店:购买服装和女装配饰
2018/06/05 全球购物
渗透攻击的测试步骤
2014/06/07 面试题
国际经济与贸易专业大学生职业规划书
2014/03/01 职场文书
酒店管理求职信
2014/06/09 职场文书
盗窃罪辩护词范文
2015/05/21 职场文书
2019年个人工作总结范文(3篇)
2019/08/27 职场文书
《语言的突破》读后感3篇
2019/12/12 职场文书
react中props 的使用及进行限制的方法
2021/04/28 Javascript