目录
- 基本语法
- 语句结构
- 函数
- 数组
- 面向对象的程序设计
- 字符串
- 正则表达式
- 常用函数
- 文件系统
- 图形图像处理
- MySQL数据库
- Cookie&Session
- 错误和异常
字符串
常用的字符串输出函数
函数名 |
描述 |
echo() |
输出字符串 |
print() |
输出一个或者多个字符串 |
die() |
输出字符串并退出当前脚本 |
printf() |
输出格式化字符串 |
sprintf() |
把格式化的字符串写入一个变量中 |
echo()和print()
echo()
- echo()用于输出一个或者多个字符串,他们是PHP中使用最多的输出函数。
- 单纯的输出而不作其它操作,因此它的效率比其他的效率要高。
echo ($arg1,$...)
$name='Marshall';
$num=15;
echo '$name
';
echo "$num
";
echo $name.'
';
echo 'Hello
P
H
P.
';
echo 'This','is','PHP.';
?>
- 通常在使用echo()函数的时候,是不加括号的,加上也不会出错。
- 在输出多个参数的时候是不可以加括号的,加上会出错。
print()
- print()函数与echo()函数的功能是相同的,不同的是print()函数是由返回值的,它总会返回1。
- 可以把print()函数作为分支结构的判断语句。
print($arg)
- print()函数在使用时也可以不加括号,并且它不可以输出多个参数。
$name='Marshall';
$num=15;
print("$name
");
print('Hello PHP.
');
print 'Hello PHP.
';
var_dump(print('Hello PHP.
'));
?>
die()
die($status)
- 如果参数为字符串,则会在退出时输出字符串。
- 如果参数为一个整数,这个值会被用作退出程序的状态码,并且不会被打印。状态码应该在0~254范围,不应该使用被PHP保留的退出码255,状态码0用于成功中止成功。
$a=0;
isset($a)||die('$a未定义,程序退出。');
echo '$a已经定义,程序继续执行。';
?>
printf()和sprintf()
printf()
printf($format,$args,...)
//关键字+字符串及如何格式化其中的变量+接受多个参数
%'[padding_character][-][width][.precision]type
//格式化表示如下
- 所有转换说明都以%开始,如果想输出一个%符号,必须用%%。
- 参数’padding_character‘是可选的,它将被用来填充变量直至所指定的的宽度,默认填充的字符是一个空格,如果指定0或者空格就不需要单引号作为前缀,其他字符必须指定单引号为前缀。
- 类是一个抽象的东西,通常不可以拿来直接使用,类实例化的对象才是我们使用的。
- 参数“-”是可选的,它指左对齐,默认是右对齐。
- 参数width是指被替换的变量的长度。
- 参数precision表示以小数点开始,它指明小数数点后要显示的位数。
- 参数type是类型码。
类型 |
含义 |
B |
解释为整数并作为二进制输出 |
C |
解释为整数并作为字符表示输出(ASCII码) |
D |
解释为整数并作为整数输出 |
F |
解释为双精度并作为浮点数输出 |
o |
解释为证书并作为八进制输出 |
s |
解释为字符串并作为字符串输出 |
u |
解释为整数并作为非指定小数输出 |
x |
解释为整数并作为带有小写字母a~f的十六进制数输出 |
X |
解释为整数并作为带有大写字母的A~F十六进制数输出 |
输出一组使用0填充空位的数字%06s,再输出一组使用f填充空位的数字%\'f3s',3,6);
?>
//第一个参数替换第一个%,第二个参数替换第二个%
printf('长度为5的数字5:%1$05d。
长度为6,小数位为3位的小数5:%1$6.3f。
15.95的整数表示方法:%2$d。
',5,15.95);
?>
//1$,2$表示占位符,分别被第一二个参数替换
- 再以整数形式输出一个浮点数时,小数部分会被舍去,而不是四舍五入。
sprintf()
- 用法与printf()函数类似。区别就是sprintf()不会输出格式化后的字符串,而是会把结果返回给一个变量。格式化的字符可以在以后需要的时候使用。
$str=sprintf('输出长度为6,小数位为3位的小数15.95:%6.3f',15.95);
echo $str;
?>
常用的字符串格式化函数
函数 |
描述 |
ltrim() |
从字符串左侧删除预定义字符 |
rtrim() |
从字符串右侧删除预定义字符 |
trim() |
从字符串两侧删除预定义字符 |
str_pad() |
把字符串填充到新的长度 |
strtolower() |
把字符串转换为小写字母 |
strtoupper() |
把字符串装换为大写字母 |
ucfirst() |
把字符串的首字符转换为大写 |
ucwords() |
把字符串中每个单词的首字符转换为大写 |
nl2br() |
把字符串中的换行符转换为HTML的换行符 |
htmlentitles() |
把字符串转换为HTML实体 |
htmlspecialchars() |
把一些预定义的字符转换为HTML实体 |
stripslashes() |
删除由addcslashes()添加的反斜杠 |
strip_tags() |
删除HTML,XML,PHP的标签 |
number_format() |
通过千位分组来格式化数字 |
strrev() |
反转字符串 |
md5() |
将一个字符串进行MD5计算 |
删除和填补字符函数
ltrim(), rtrim(),trim()
- 空格也是字符,会占据一个位置。
- ltrim()用于删除字符串开始位置。
- rtrim()用于删除字符串结束位置。
- trim()用于从字符串两则开始删除。
参数 |
描述 |
” “ |
普通空格符 |
“\t” |
制表符 |
“\n” |
换行符 |
“\r” |
回车符 |
“\0” |
空字节符 |
“\x0B” |
垂直制表符 |
ltrim($str,$charlist)
$str='123 This is PHP!!!';
var_dump($str);
echo '
';
var_dump($str,123);
echo '
';
var_dump($str,'!');
echo '
';
var_dump($str,'0..9!');
echo '
';
echo $str.'
';
echo ltrim($str,123);
echo '
';
echo ltrim($str,'!');
echo '
';
echo ltrim($str,'0..9!');
echo '
';
?>
str_pad()
str_pad($input,$pad_length,$pad_string="",$pad_type=STR_PAD_RIGHT)
- 如果pad_length的值是负数,小于或者等于输入的字符串长度,不会发生任何填充。
- 如果填充字符的长度不能被pad_string整除,那么pad_string可能会被缩短。
- 可选的参数pad_type参数可以是:STR_PAD_RIGHT,STR_PAD_LEFT,STR_PAD_BOTH。
$str='123 This is PHP!';
var_dump($str);
echo '
';
$str_new=str_pad($str,36,'<>',STR_PAD_BOTH);
var_dump($str_new);
echo '
';
echo $str_new;
?>
转换大小写函数
- PHP提供了4个转换大小写的处理函数,均只有一个必须的参数,传入要处理的字符串,均返回一个新的字符串。
$str='This is PHP!';
echo strtolower($str).'
';
echo strtoupper($str).'
';
echo ucfirst($str).'
';
echo ucwords($str).'
';
?>
HTML相关字符串格式化函数
nl2br()
nl2br($string,$is_xhtml=true)
echo "Hello\nPHP";
echo '
';
echo nl2br("Hello\nPHP");
?>
htmlspecialchars()
htmlspecialchars($string,$quotestyle,$character-set,$double_encode)
- 在htmlspecialchars()中,$quotestyle常用的可选值如下
ENT_COMPAT:默认,仅编码双引号。
ENT_QUOTES:编码双引号和单引号。
ENT_NOQUOTES:不编码任何引号。
'这是网页标题
这里是网页显示的内容
echo htmlspecialchars(
这里是网页显示的内容
?>
htmlentities()
- 把所有支持的代码全部转换为HTML实体,无法识别的字符集将被忽略。语法与htmlspecialchars相同。
echo htmlspecialchars('这是网页标题
这里是网页显示的内容
',ENT_NOQUOTES,'utf-8');
?>
- 使用strip_tags()来去除HTML和PHP标记。
strip_tags($str,$allowable_tags)
echo strip_tags('这是网页标题
这里是网页显示的内容
这里不再被删除。');
?>
echo strip_tags('这是网页标题
这里是网页显示的内容
','');
?>
其他字符串格式化函数
strrev()
echo strrev('This is PHP!');
echo '
';
echo strrev('我们都爱PHP。');
?>
number_format(number,decimals,decimalpoint,sepatator)
echo number_format('10000000000').'
';
echo number_format('10000000000',2).'
';
echo number_format('10000000000',4,',','|').'
';
?>
MD5()和sha1()
- MD5():默认返回32位的十六进制字符串。
- sha1():默认返回40位的十六进制字符串。
md5($str,$raw_output)
$str='This is PHP!';
echo 'MD5:'.MD5($str);
echo '
';
echo 'sha1:'.sha1($str);
?>