一步一步学习PHP(7) php 字符串相关应用


Posted in PHP onMarch 05, 2010

1. 字符串的表现形式
在PHP中,字符串有三种表现形式:单引号,双引号,以及heredoc。
PHP手册建议,在一般情况下,尽量使用单引号的字符串。如果需要转义变量,才使用双引号的字符串。如果需要多行显示,才使用heredoc。
heredoc形式:

<?php 
$test=<<< FOOBAR 
Hello World! 
Hello PHP! 
FOOBAR; 
echo $test; 
?>

Heredoc是有着开始符和结束符的一段文字,在本段程序中为FOOBAR,不过个人建议最好使用更复杂的字符串,这样的话可以避免在字符串中遇到与其同样的文本而发生错误。
另外,需要注意的一点就是,在heredoc中并非是空格无关的,所以最后一行结尾符一定要在该行开头(无空格和缩进)。我就因为这个调试了N久,?濉??
但是在一般应用中,heredoc不是很常用的。
关于单引号和双引号的区别,可以参考我之前的文章:
2. 字符串的输出
关于字符串的输出,其实有很多方式,但是在这里个人认为只介绍有用的三个:
A. echo 这个是最常用的字符串的输出形式,但是在这里需要知道echo不是函数,而是语言结构,区别是函数都是有返回值的,但是语言结构是没有返回值的。当然,这个了解就可以了。
B. printf 这个常用于字符串先组合后打印,其实很类似于String.Format然后再打印,如果大家学过C语言,一定会这段代码很熟悉,就不多做解释了:
<?php 
printf('Hello %s,I am %d','world',22); 
?>

C. print_r,这个函数主要用于调试,该函数的最大好处是能把一些乱七八糟的东西都打印出来,举个例子:
<?php 
class People 
{ 
private $name; 
public function People($name) 
{ 
$this->name=$name; 
} 
public function Say() 
{ 
echo('Hello'.$name); 
} 
} 
$p=new People("kym"); 
print_r($p); 
?>

一步一步学习PHP(7) php 字符串相关应用 
还可以是:
<?php 
$arr=array('1'=>'kym','2'=>'sina','3'=>'blog'); 
print_r($arr); 
?>

但是这个函数也有个缺点:
<?php 
print_r(true); 
print_r(false); 
?>

结果发现无法正常打印。那么这时这个函数相对来说就更适合于调试了。
D. var_dump,这个函数相比于print_r最大的优势就在于可以打印出true和false。其余用法一致。
3. 字符串的常用函数
脚本语言一向以字符串处理为荣,那么我就来看下常用的字符串处理函数。我们可以查阅一下PHP的字符串函数库。
其中,个人认为常用的只有这么几个:
<?php 
$str='HelloPHP'; 
md5($str); //MD5加密 
for($i=0;$i<strlen($str);$i++) 
{ 
echo($str($i)); 
} 
strtoupper($str); //转成大写 
strtolower($str); //转成小写 
trim($str); //去掉首位的空白 
rtrim($str); //去掉右边的空白 
ltrim($str); //去掉左边的空白 
strrev($str); //字符串反转 
?>

感觉没几个的,一写起来感觉都很有用,算了,还是看手册吧。
PHP 相关文章推荐
加强版phplib的DB类
Mar 31 PHP
PHP批量生成缩略图的代码
Jul 19 PHP
PHP程序61条面向对象分析设计的经验小结
Nov 12 PHP
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
Nov 10 PHP
PHP mysql与mysqli事务使用说明 分享
Aug 17 PHP
在PHP中运行Linux命令并启动SSH服务的例子
Jun 12 PHP
PHP curl伪造IP地址和header信息代码实例
Apr 27 PHP
php实现图片上传时添加文字和图片水印技巧
Apr 18 PHP
PHP实现的自定义数组排序函数与排序类示例
Nov 18 PHP
PHP实现上传图片到数据库并显示输出的方法
May 31 PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
Oct 21 PHP
PHP实现基本留言板功能原理与步骤详解
Mar 26 PHP
PHP 创建文件(文件夹)以及目录操作代码
Mar 04 #PHP
php &amp;&amp; 逻辑与运算符使用说明
Mar 04 #PHP
PHP MVC模式在网站架构中的实现分析
Mar 04 #PHP
通用PHP动态生成静态HTML网页的代码
Mar 04 #PHP
php绝对路径与相对路径之间关系的的分析
Mar 03 #PHP
PHP开发中常用的三个表单验证函数使用小结
Mar 03 #PHP
PHP 引用文件技巧
Mar 02 #PHP
You might like
使用sockets:从新闻组中获取文章(一)
2006/10/09 PHP
php 显示指定路径下的图片
2009/10/29 PHP
PHP开发者常犯的10个MySQL错误更正剖析
2012/01/30 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
2013/11/12 PHP
PHP多线程之内部多线程实例分析
2015/03/09 PHP
php注册登录系统简化版
2020/12/28 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
php使用curl模拟浏览器表单上传文件或者图片的方法
2018/11/10 PHP
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
jQuery function的正确书写方法
2013/08/02 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
利用Chrome DevTools直接调试Node.js和JavaScript的方法详解(并行)
2017/02/16 Javascript
nodejs学习笔记之路由
2017/03/27 NodeJs
vue 数组和对象不能直接赋值情况和解决方法(推荐)
2017/10/25 Javascript
vuex的使用步骤
2021/01/06 Vue.js
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
对python 读取线的shp文件实例详解
2018/12/22 Python
pyhanlp安装介绍和简单应用
2019/02/22 Python
Python3几个常见问题的处理方法
2019/02/26 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
2019/04/17 Python
Pycharm+Python+PyQt5使用详解
2019/09/25 Python
python3 常见解密加密算法实例分析【base64、MD5等】
2019/12/19 Python
什么是python的id函数
2020/06/11 Python
python3字符串输出常见面试题总结
2020/12/01 Python
django中ImageField的使用详解
2020/12/21 Python
使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法
2016/07/08 HTML / CSS
趣天网日本站:Qoo10 JP
2019/09/18 全球购物
工业自动化毕业生自荐信范文
2014/01/04 职场文书
工作批评与自我批评范文
2014/10/16 职场文书
2014年团委工作总结
2014/11/13 职场文书
我的中国梦主题班会
2015/08/14 职场文书
社会实践心得体会范文
2016/01/14 职场文书
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js
MySQL中order by的使用详情
2021/11/17 MySQL