一步一步学习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 相关文章推荐
php curl选项列表(超详细)
Jul 01 PHP
php中的常用魔术方法总结
Aug 02 PHP
简单实用的.net DataTable导出Execl
Oct 28 PHP
php实现文件下载功能的几个代码分享
May 10 PHP
ThinkPHP之N方法实例详解
Jun 20 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 PHP
php查询mssql出现乱码的解决方法
Dec 29 PHP
功能强大的php分页函数
Jul 20 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Dec 14 PHP
PHP 中使用ajax时一些常见错误总结整理
Feb 27 PHP
php获取excel文件数据
Apr 21 PHP
PHP ADODB实现分页功能简单示例
May 25 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
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
php中使用array_filter()函数过滤空数组的实现代码
2014/08/19 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
Javascript与flash交互通信基础教程
2008/08/07 Javascript
用 Javascript 验证表单(form)中多选框(checkbox)值
2009/09/08 Javascript
Jquery增加鼠标中间功能mousewheel的实例代码
2013/09/05 Javascript
JQUERY 设置SELECT选中项代码
2014/02/07 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
2014/10/20 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
javascript实现日期按月份加减
2015/05/15 Javascript
JavaScript中使用指数方法Math.exp()的简介
2015/06/15 Javascript
jquery解析XML及获取XML节点名称的实现代码
2016/05/18 Javascript
jQuery如何获取动态添加的元素
2016/06/24 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
javascript 组合按键事件监听实现代码
2017/02/21 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
javascript 中select框触发事件过程的分析
2017/08/01 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
2018/01/02 Javascript
微信小程序修改checkbox的样式代码实例
2020/01/21 Javascript
Vue+Element自定义纵向表格表头教程
2020/10/26 Javascript
[09:23]国际邀请赛采访专栏:iG战队VK,Tongfu战队Cu
2013/08/05 DOTA
Python+django实现文件下载
2016/01/17 Python
python写入已存在的excel数据实例
2018/05/03 Python
python sort、sort_index方法代码实例
2019/03/28 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
python打开文件的方式有哪些
2020/06/29 Python
NBA欧洲商店(英国):NBA Europe Store UK
2018/07/27 全球购物
Geekbuying波兰:购买中国电子产品
2019/10/20 全球购物
酷瑞网络科技面试题
2012/03/30 面试题
Python里面如何实现tuple和list的转换
2012/06/13 面试题
有关爱国演讲稿
2014/05/07 职场文书
国庆阅兵观后感
2015/06/15 职场文书
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
如何利用js在两个html窗口间通信
2021/04/27 Javascript