PHP编程中字符串处理的5个技巧小结


Posted in PHP onNovember 13, 2007

字符串
注意单引号和双引号的区别
注意转义字符\的使用\\,\",\$
注意使用8进制或16进制字符表示 \xf6
echo "H\xf6me";//需要察看是否支持此类文字编码
---------------------输出结果----------------------------------------
H?e
---------------------------------------------------------------------

1.使用printf()和sprintf()创建格式化的输出

printf()直接输出到输出缓冲区
sprintf()的输出作为字符串返回
如printf("输出内容 %.2f\n",$PI());
所有的转换规范都以%开头
数据类型有d-整数,s-字符串,f-浮点数,b-二进制
.2是一个可选的宽度指标,小数点右边输出使用0填充
printf("%.2f",3.14159);
printf("%10.2f",3.14159);
printf("%.10f",3.14159);
printf("%.9s",abcdefghijklmn);
printf("%5.2f,%f,%7.3f\m",3.14159,3.14159,3.14159);
printf("%b %d %f %s \n",123,123,123,"test");
---------------------输出结果----------------------------------------
3.14 3.143.1415900000abcdefghi 3.14,3.141590, 3.142\m1111011 123 123.000000 test 
---------------------------------------------------------------------

2.字符串填充

string str_pad(string input原始字串, int length添加后的总长度[, string padding要填充的字符 [, int pad_type]填充类型])
填充类型有添加在左边STR_PAD_LEFT,默认添在右边,填充在两端STR_PAD_BOTH
$index = array("one"=>1,"two"=>155,"three"=>1679);
echo "
";
echo str_pad("这是标题",50," ",STR_PAD_BOTH)."\n";
foreach($index as $inkey=>$inval)
        echo str_pad($inkey,30,".").str_pad($inval,20,".",STR_PAD_LEFT)."\n";
echo "
";
---------------------输出结果----------------------------------------

                     这是标题                     
one..............................................1
two............................................155
three.........................................1679

---------------------------------------------------------------------
string strtolower(string subject)//转换为小写
string strtoupper(string subject)//转换为大写
string ucfirst(string subject)//首字母大写
string ucwords(string subject)//每个单词首字母大写
string ltrim(string subject)//去左空白
string rtrim(string subject)//去右空白
string trim(string subject)去左右空白,空白包括null,制表符,换行符,回车符和空格
string n12br(string source)//将\n表示的换行符转换为<BR />标记

3.字符串比较

integer strcmp(sting str1,string str2) //str1大于str2返回-1 str1小于str2返回1 str1和str2相等返回0 
integer strmcmp(sting str1,string str2,integer length) //第三个参数限制length个字符的比较
print strcmp("aardvark","aardwolf");
print strncmp("aardvark","aardwolf",4);
---------------------输出结果----------------------------------------
-10
---------------------------------------------------------------------
strcasecmp()和strncasecmp()是不区分大小写的比较函数

4.查找和抽取子字符串

string substr(sting source,integer start[,integer length])//从start开始取length个字符
start和length可以使用负值
$var = "abcdefgh";
print substr($var,2);//从0开始计数
print substr($var,2,3);
print substr($var,-1);//从字符串的末尾开始
print substr($var,-5,2);
print substr($var,-5,-2);
---------------------输出结果----------------------------------------
cdefgh
cde
h
de
def
---------------------------------------------------------------------
integer strpos(string haystack,string needle[,integer offset])//查找子字符串的位置,返回第一次出现.
integer strrpos(string haystack,string needle)//只搜索单个字符(多个字符只取第一个),返回最后一次出现的索引.
还有常见的从 字符串中抽取找到的部分 的函数
string strstr(string haystack,string needle)//不区分大小写
string stristr(string haystack,string needle)//区分大小写
string strrchr(string haystack,sting needle)
*********** array explode(string separator,string subject[,integer limit])//返回一个字符串数组
array implode(string glue,array pieces)//返回一个字符串
///////////////////////////代码段////////////////////////////////////////
$guest = "this is a string";
$guestArray = explode(" ",$guest);
var_dump($guestArray);
sort($guestArray);
echo implode(",",$guestArray);
////////////////////////////////////////////////////////////////////////
---------------------输出结果----------------------------------------
array(4) { [0]=> string(4) "this" [1]=> string(2) "is" [2]=> string(1) "a" [3]=> string(6) "string" } a,is,string,this
---------------------------------------------------------------------

5.替换字符和子字符串

string substr_replace(string source,string replace,int start[,int length]) 

PHP 相关文章推荐
php+javascript的日历控件
Nov 19 PHP
PHP删除目录及目录下所有文件的方法详解
Jun 06 PHP
php创建基本身份认证站点的方法详解
Jun 08 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 PHP
PHPer 需要了解的 5 个 Composer 小技巧
Aug 18 PHP
PHP使用curl模拟post上传及接收文件的方法
Mar 04 PHP
PHP实现截取中文字符串不出现?号的解决方法
Dec 29 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
Mar 31 PHP
PHP多进程之pcntl_fork的实例详解
Oct 15 PHP
PHP单例模式模拟Java Bean实现方法示例
Dec 07 PHP
PDO::quote讲解
Jan 29 PHP
表单复选框向PHP传输数据的代码
Nov 13 #PHP
实用函数10
Nov 08 #PHP
实用函数9
Nov 08 #PHP
实用函数8
Nov 08 #PHP
实用函数7
Nov 08 #PHP
实用函数5
Nov 08 #PHP
实用函数4
Nov 08 #PHP
You might like
phpstorm配置Xdebug进行调试PHP教程
2014/12/01 PHP
浅析php设计模式之数据对象映射模式
2016/03/03 PHP
学习PHP Cookie处理函数
2016/08/09 PHP
php 实现一个字符串加密解密的函数实例代码
2016/11/01 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
JavaScript 判断用户输入的邮箱及手机格式是否正确
2013/12/08 Javascript
js实现连个数字相加而不是拼接的方法
2014/02/23 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
2014/12/16 Javascript
JQuery中serialize()用法实例分析
2015/02/06 Javascript
node.js读取文件到字符串的方法
2015/06/29 Javascript
HTML5实现留言和回复页面样式
2015/07/22 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
2016/06/25 Javascript
angularjs 源码解析之injector
2016/08/22 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
js中document.referrer实现移动端返回上一页
2017/02/22 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
easyui简介_动力节点Java学院整理
2017/07/14 Javascript
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
详解vue后台系统登录态管理
2019/04/02 Javascript
了解JavaScript中的选择器
2019/05/24 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
JavaScript 中的执行上下文和执行栈实例讲解
2021/02/25 Javascript
改进Django中的表单的简单方法
2015/07/17 Python
python3调用R的示例代码
2018/02/23 Python
python判断计算机是否有网络连接的实例
2018/12/15 Python
Python 脚本获取ES 存储容量的实例
2018/12/27 Python
Python里字典的基本用法(包括嵌套字典)
2019/02/27 Python
python使用tomorrow实现多线程的例子
2019/07/20 Python
django 模型中的计算字段实例
2020/05/19 Python
电气工程及其自动化学生实习自我鉴定
2013/09/19 职场文书
副总经理工作职责
2013/11/28 职场文书
商业街策划方案
2014/05/31 职场文书
党的群众路线教育实践活动个人对照检查材料
2014/09/22 职场文书
请假条应该怎么写?
2019/06/24 职场文书
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python