一步一步学习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+AJAX传送中文会导致乱码的问题的解决方法
Sep 08 PHP
队列在编程中的实际应用(php)
Sep 04 PHP
利用中国天气预报接口实现简单天气预报
Jan 20 PHP
header导出Excel应用示例
Jan 24 PHP
PHP下获取上个月、下个月、本月的日期(strtotime,date)
Feb 02 PHP
Windows下的PHP 5.3.x安装 Zend Guard Loader教程
Sep 06 PHP
php新浪微博登录接口用法实例
Dec 23 PHP
php 5.6版本中编写一个PHP扩展的简单示例
Jan 20 PHP
PHP获取文件扩展名的4种方法
Nov 24 PHP
PHP 微信扫码支付源代码(推荐)
Nov 03 PHP
PHP基于自定义类随机生成姓名的方法示例
Aug 05 PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 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
无数据库的详细域名查询程序PHP版(3)
2006/10/09 PHP
ezSQL PHP数据库操作类库
2010/05/16 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
Smarty使用自定义资源的方法
2015/08/08 PHP
利用PHP fsockopen 模拟POST/GET传送数据的方法
2015/09/22 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
2019/05/28 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
Javascript select下拉框操作常用方法
2009/11/09 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
node.js中的fs.fchmod方法使用说明
2014/12/16 Javascript
Angular使用$http.jsonp发送跨站请求的方法
2017/03/16 Javascript
jQuery Plupload上传插件的使用
2017/04/19 jQuery
ES6新特性八:async函数用法实例详解
2017/04/21 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
javascript 构建模块化开发过程解析
2019/09/11 Javascript
[38:39]KG vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
使用Python中的tkinter模块作图的方法
2017/02/07 Python
python实现学生管理系统
2018/01/11 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
Python对HTML转义字符进行反转义的实现方法
2019/04/28 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
Python 面向对象之类class和对象基本用法示例
2020/02/02 Python
CSS3 calc()会计算属性详解
2018/02/27 HTML / CSS
css和css3弹性盒模型实现元素宽度(高度)自适应
2019/05/15 HTML / CSS
Ajax实现页面无刷新留言效果
2021/03/24 Javascript
技术学校毕业生求职信分享
2013/12/02 职场文书
文化建设工作方案
2014/05/12 职场文书
单位法定代表人授权委托书
2014/09/20 职场文书
员工教育培训协议书
2014/09/27 职场文书
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
安全生产培训心得体会
2016/01/18 职场文书
2016优秀护士求职自荐信
2016/01/28 职场文书
mysql如何配置白名单访问
2021/06/30 MySQL