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 水平的题目
May 30 PHP
php 魔术函数使用说明
Feb 21 PHP
奇怪的PHP引用效率问题分析
Mar 23 PHP
如何用PHP实现插入排序?
Apr 10 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
Jan 07 PHP
php中smarty实现多模版网站的方法
Jun 11 PHP
详谈PHP编码转换问题
Jul 28 PHP
PHP弹出对话框技巧详细解读
Sep 26 PHP
深入解析PHP的Yii框架中的event事件机制
Mar 17 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
PHP图片添加水印功能示例小结
Oct 03 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
May 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
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
php empty() 检查一个变量是否为空
2011/11/10 PHP
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
解决laravel 表单提交-POST 异常的问题
2019/10/15 PHP
使用JavaScript实现Java的List功能(实例讲解)
2013/11/07 Javascript
元素绑定click点击事件方法
2015/06/08 Javascript
AngularJS教程 ng-style 指令简单示例
2016/08/03 Javascript
JavaScript 链式结构序列化详解
2016/09/30 Javascript
angular+bootstrap的双向数据绑定实例
2017/03/03 Javascript
promise处理多个相互依赖的异步请求(实例讲解)
2017/08/03 Javascript
javascript代码优化的8点总结
2018/01/29 Javascript
Webpack 4.x搭建react开发环境的方法步骤
2018/08/15 Javascript
vue-cli 3.0 自定义vue.config.js文件,多页构建的方法
2018/09/19 Javascript
使用react context 实现vue插槽slot功能
2019/07/18 Javascript
JS数组进阶示例【数组的几种函数用法】
2020/01/16 Javascript
解决Antd Table组件表头不对齐的问题
2020/10/27 Javascript
vue 中使用print.js导出pdf操作
2020/11/13 Javascript
Python实现快速排序算法及去重的快速排序的简单示例
2016/06/26 Python
Python实现的redis分布式锁功能示例
2018/05/29 Python
python scatter散点图用循环分类法加图例
2019/03/19 Python
详解用Python练习画个美队盾牌
2019/03/23 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
Django DRF APIView源码运行流程详解
2020/08/17 Python
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
Airbnb爱彼迎官网:成为爱彼迎房东,赚取收入
2019/03/14 全球购物
综合实践活动方案
2014/02/14 职场文书
承诺书格式范文
2014/06/03 职场文书
电子商务专业毕业生自荐书
2014/06/22 职场文书
教师批评与自我批评心得体会
2014/10/16 职场文书
市场部经理岗位职责
2015/02/02 职场文书
自我工作评价范文
2015/03/06 职场文书
阿凡达观后感
2015/06/10 职场文书
vue backtop组件的实现完整代码
2021/04/07 Vue.js
JAVA API 实用类 String详解
2021/10/05 Java/Android