第4章 数据处理-php字符串的处理-郑阿奇(续)


Posted in PHP onJuly 04, 2011

1.字符串的定义与显示
定义:通过””,''来标志
显示:echo()和print(),但print()具有返回值值,1,而echo()没有,但echo比print()要快,print()能用在复合语句中。
2.字符串的格式化
printf(string $format[,mixed$args])
第一参数是格式字符串,$args是要替换进来的值,prinf(“%d”,$num);
说明,如果想打印一个”%”,必须用”%”,浮点数f,八进制用”0”
3.常用的字符串函数
1.计算字符串的长度
strlen(string $string),说明,1个英文长度1个字符,1个汉字长度为2个字符,空格也算一个字符。
2.将字符串改变大小写
转为小写:strtolower()
转为大写:strtoupper()
将第一个字符大写: ucfirst()
将每个单词的第一个字母大写 ucwords()
3.字符串裁剪。
当一个字符串的首尾有多余的空白字符,如空格、制表符等可以用
string trim(string $str[,string $charlist])
string rtrim(string $str[sring $charlist])
string itrim(string $str[,string $charlist])
表4.1 trim、itrim、rtrim函数的默认删除字符

字 符 ASCII码 意 义
" " 32(0x20) 空格
"\t" 9(0x09) 制表符
"\n" 10(0x) 换行
"\r" 13(0x0D) 回车
"\0" 0(0x00) 空字节
"\x0B" 11(0x0B) 垂直制表符

4.字符串的查找
string strstr(string $a, string $b)
说明:strstr()函数用于查找字符串指针$b在字符串$a中出现的位置,
并返回$a字符串中从$b开始到$a字符串结束处的字符串。
如果没有返回值,即没有发现$b,则返回FALSE。strstr()函数还有一个同名函数strchr()。
5.字符串与ASCII码
4.字符串的比较
比较函数有
strcmp() //区分大小写
strcasecmp()//不区分大小写
strncmp() //比较部分
strncasecmp()//不区分大小写,比较部分
5.字符串的替换
str_replace(search,replace,subject)
说明使用新的字符串replace替换字符串subject中的search字符串
<?php
$str="I love you";
$replace="lucy";
$end=str_replace("you",$replace,$str);
echo $end; //输出"I love lucy"
?>
对大小写敏感,还可实现多对一、多对多的替换,但无法实现一对多的替换。
<?php
$str="What Is Your Name";
$array=array("a","o","A","O","e");
echo str_replace($array, "",$str); //多对一的替换,输出"Wht Is Yur Nm"
$array1=array("a","b","c");
$array2=array("d","e","f");
echo str_replace($array1,$array2, "abcdef"); //多对多的替换,输出"defdef"
?>
substr_replace
替换字符串的一部分。
6.字符串与HTML

7.其它字符串函数
1.字符串与数组
a.字符串转化为数组
explode()函数可以用指定的字符串分割另一个字符串,并返回一个数组
<?php
$str="使用 空格 分割 字符串";
array=explode(" ", $str);
pint_r($array);
输出Array ( [0] => 使用 [1] => 空格 [2] => 分割 [3] => 字符串 )
?>
b.数组转化为字符串
implode(string $glue,array $pieces)
$pieces是保存要连接的字符串的数组,$glue是用于连接字符串的连接符。例如:
<?php
$array=array("hello","how","are","you");
$str=implode(",",$array); //使用逗号作为连接符
echo $str; //输出"hello,how,are,you"
?>
c.字符串的加密函数
md5(); crypt(),但这个函数一旦加密后就无法转化为原来的形式。
4.3实例留言薄内容处理
一个留言簿,留言簿上有Email地址和用户的留言,提取客户的Email地址和留言,要求Email地址中@符号前不能有点“.”或逗号“,”。
将Email地址中@符号前的内容作为用户的用户名,并将用户留言中第一人称“我”修改为“本人”。
<form name="f1" method="post" action=""> 
<font face="方正舒体" size=4>您的Email地址:</font><br> 
<input type="text" name="Email" size=31><br> 
<font face="方正舒体" size=4>您的留言:</font><br> 
<textarea name="note" rows=10 cols=30></textarea> 
<br><input type="submit" name="bt1" value="提交"> 
<input type="reset" name="bt2" value="清空"> 
</form> 
<!--以上是留言簿表单--> 
<?php 
if(isset($_POST['bt1'])) 
{ 
$Email=$_POST['Email']; //接收Eamil地址 
$note=$_POST['note']; //接收留言 
if(!$Email||!$note) //判断是否取得值 
echo "<script>alert('Email地址和留言请填写完整!')</script>"; 
else 
{ 
$array=explode("@", $Email); //分割Email地址 
if(count($array)!=2) //如果有两个@符号则报错 
echo "<script>alert('Email地址格式错误!')</script>"; 
else 
{ 
$username=$array[0]; //取得@符号前的内容 
$netname=$array[1]; //取得@符号后的内容 
//如果username中含有“.”或“,”则报错 
if(strstr($username,".") or strstr($username,",")) 
echo "<script>alert('Email地址格式错误!')</script>"; 
else 
{ 
$str1= htmlspecialchars("<"); //输出符号“<” 
$str2= htmlspecialchars(">"); //输出符号“>” 
//将留言中的“我”用“本人”替代 
$newnote=str_replace("我","本人",$note); 
echo "<font face='黑体' size=4>"; 
echo "用户". $str1. $username . $str2. "您好! "; 
echo "您是". $netname. "网友!<br>"; 
echo "<br>您的留言是:<br>    ".$newnote."<br>"; 
echo "</font>"; 
} 
} 
} 
} 
?>
PHP 相关文章推荐
基于mysql的论坛(5)
Oct 09 PHP
获得Google PR值的PHP代码
Jan 28 PHP
php快速url重写更新版[需php 5.30以上]
Apr 25 PHP
php记录日志的实现代码
Aug 08 PHP
php curl常见错误:SSL错误、bool(false)
Dec 28 PHP
PHP优于Node.js的五大理由分享
Sep 15 PHP
ubuntu12.04使用c编写php扩展模块教程分享
Dec 25 PHP
ThinkPHP3.1.3版本新特性概述
Jun 19 PHP
destoon切换城市后实现logo旁边显示地区名称的方法
Aug 21 PHP
php常用正则函数实例小结
Dec 29 PHP
php封装的pdo数据库操作工具类与用法示例
May 08 PHP
Yii框架分页技术实例分析
Aug 30 PHP
第4章 数据处理-php数组的处理-郑阿奇
Jul 04 #PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-3 代码组织和重用2
Jul 03 #PHP
PHP和Mysqlweb应用开发核心技术-第1部分 Php基础-2 php语言介绍
Jul 03 #PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
Jul 03 #PHP
PHP的范围解析操作符(::)的含义分析说明
Jul 03 #PHP
一个基于PDO的数据库操作类(新) 一个PDO事务实例
Jul 03 #PHP
PHP array_multisort()函数的使用札记
Jul 03 #PHP
You might like
Yii框架中memcache用法实例
2014/12/03 PHP
php实现的操作excel类详解
2016/01/15 PHP
PHP常用设计模式之委托设计模式
2016/02/13 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
整理8个很棒的 jQuery 倒计时插件和教程
2011/12/12 Javascript
JS实现图片预加载无需等待
2012/12/21 Javascript
jQuery实现页面滚动时层智能浮动定位实例探讨
2013/03/29 Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
2014/07/23 Javascript
详解maxlength属性在textarea里奇怪的表现
2015/12/27 Javascript
对象转换为原始值的实现方法
2016/06/06 Javascript
jQuery Easyui 下拉树组件combotree
2016/12/16 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
详解webpack-dev-server使用http-proxy解决跨域问题
2018/01/13 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
详解微信小程序开发用户授权登陆
2019/04/24 Javascript
详解JS实现系统登录页的登录和验证
2019/04/29 Javascript
layui加载表格,绑定新增,编辑删除,查看按钮事件的例子
2019/09/06 Javascript
关于layui 下拉列表的change事件详解
2019/09/20 Javascript
javascript使用链接跨域下载图片
2019/11/01 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
[01:15:36]加油刀塔第二期网络版
2014/08/09 DOTA
python退出循环的方法
2020/06/18 Python
如何使用python socket模块实现简单的文件下载
2020/09/04 Python
tensorflow与numpy的版本兼容性问题的解决
2021/01/08 Python
html5+CSS3+JS实现七夕言情功能代码
2017/08/28 HTML / CSS
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
西班牙在线药店:DosFarma
2020/03/28 全球购物
通信工程毕业生自荐信
2013/11/01 职场文书
金属材料工程个人求职的自我评价
2013/12/04 职场文书
大一新生军训时的自我评价分享
2013/12/05 职场文书
国培远程培训感言
2014/03/08 职场文书
会计学毕业生求职信
2014/06/25 职场文书
校园会短篇的广播稿
2014/10/21 职场文书
Python实战之实现简易的学生选课系统
2021/05/25 Python
Python字符串常规操作小结
2022/04/03 Python
修改Nginx配置返回指定content-type的方法
2022/09/23 Servers