变量替换:用双引号或heredoc定义一个字符串直接量时,服从变量替换原则。
两种替换变量到字符串的方法:
1. $who = 'weison';
echo "$who is a hero.";
2 $who = 'weison';
echo "{ $who } is a hero.";
php不会重复替换,只处理有双引号的字符串中的替换:
$bar = 'weison';
$foo = '$bar';
print("$foo");
结果:$bar
用单引号括起来的字符串不替换变量:
$name = 'weison';
$foo = 'hello,$name';
echo $foo;
结果:hello,$name
单引号转义和双引号转义有所不同:
$name = 'weison O\'Reilly';
echo $name;
结果: weison O'Reilly
'\n' 结果:\n
双引号转义:
\" "
\n 换行
\r 回车
\t 制表符
\\ \
\$ $
\{ {
\} }
\[ ]
\] ]
\0-\777 八进制ASSII字符
\x-\xFF 十六进制ASSII字符
here文档
$str = <<< End_of_Quote
...
End_of_Quote;
在<<<之后一定要有个空格,利于拾取该标识符
输出字符串:echo ,print(),prinf(),print_r(),var_dump
echo:将字符串php生产的html页面中。
print():传送一个值到浏览器。如果字符串成功显示则返回true否则false
printf():与C语言中的函数相同。
b: 整数显示为二进制
c: 整数显示为字符
d: 整数显示为十进制数
e或f:双精度数先生为浮点数
g: 有精度双精度数显示为浮点数
o: 整数显示为八进制
s: 字符串显示为字符串
u: 无符号整数显示为十进制数
x: 整数显示为十六进制,小写字母
X: 大写字母
strlen()返回一个字符串长度。
整理字符串:
删除空白符:trim()、ltrim()、rtrim()
trim()返回一个删错了开头和结尾空白符的string的拷贝。
ltrim() 删除开头空白符
rtrim() 删除结尾空白符
改变大小写:
strtolower()和strtoupper()对整个字符串操作,ucfirst()仅操作第一个字母
ucwords()操作字符串里每一个单词的首字母
HTML函数:
htmlentitise()用HTML实体等价物转换字符(空字符除外),这些字符包括
< > &和着重字符
htmlspecialchars()转换可能生成有效HTML的最小实体集
strip_tags()从一个字符串中删除HTML标签。
get_meta_tags()返回该页中元(meta)标签的一个数组,该元标签(keywords、
author、description等)的名字变成数组中的键,内容变成值
URL函数:
RFC 1738编码和解码
rawurlencode()编码
rawurldecode()解码
urlencode()
urldecode()
parse_url()返回一个由url成分组成的数组。
字符串比较:
== 操作符将非字符串操作数转换为字符串
=== 不进行转换
近似相当:soundex()、metaphone()、similar_text()和levenshtein()
字符串函数:
substr(srting,start,length):截取字符串。
substr_replace(string,new,start,length)修改截取部分的字符串为new的值
strrve(string)带一个字符串参数,返回一个翻转顺序的拷贝。
srt_repeat(srting,count)带一个字符串参数和一个计数参数,返回一个由重复
count次string参数组成的新字符串。
str_pad()填充字符串
implode()用一组较小的字符串创建一个大字符串。join()是它的一个别名。
分解字符串:explode()、strtok()、sscanf()
字符串查找函数:
strpos()和strrpos()返回位置
strstr()和strchr()返回找到的字符串
strspn()和strcspn()返回字符串的开始部分有多少与一个掩码匹配。
正则表达式:
^ :必须与字符串的开头匹配。
$ :必须与字符串的末尾匹配。
如果想匹配特殊字符中的一个(成为元字符),则需要转义。
在默认情况下正则表达式区分大小写。
正则表达式三种基本的抽象模式类型:
一个可以出现在字符串中的可接受字符集(如:字母字符,数字字符
和特殊的标点符号)
一个为字符串而设置的可选择性的集合(如:com,edu,net,org)
一个字符串中的重复序列(至少一个但是不多于五个数字字符)
这三种模式可以按无数种方法结合来创建正则表达式,以匹配像有效
电话号码和URL之类的东西。
字符类:
......