继续前天的写吧。
16、在变量名后面加括号“()”,系统会自动查找与变量值同名的函数并执行,这个与可变变量有些相似,如:
<?php
$a = "func_a";
function func_a(){
return 0;
}
$a(); //这里使用变量名加插号就相当于调用与a的变量值同名的函数
17、可以在函数体内嵌套定义函数,被嵌套的函数是不公开的,并且只在父函数体内有效;
18、PHP中可以使用nl2br()函数把字符串中的换行符自动输出为“
”,如:
<?php
$string = "这是第一行\n这是第二行";
echo nl2br($string);
/**********
输出:
这是第一行
这是第二行
************
HTML
这是第一行<br />这是第二行
**************/
19、PHP中常用的定义字符串的方式有三种,即单引号、双引号和heredoc方式,双引号内的变量和转义符会被正常解析并输出,而单引号中的不会,所以一般字符串里面不包含需要被转义的字符串时建议使用单引号,因为更快的执行速度;heredoc方式是以三个小于号“<<<”作为定界符,外加一个标识这样的方式来定义字符串的,这样做的好处是可以同时包含多行内容,并且行内的变量会被解析:
<?php
$a = 'icewingcc.com';
$str1 = 'This is my website:\n$a';
//单引号内的变量和转义符不会被解析,所以字符串会被原样输出
$str2 = "This is my website:\n$a';
/*会输出
This is my website:
icewingcc.com
因为字符串中的转义符和变量会被解析*/
$str3 = <<<ICE
这种定义方式需要三个小于号开头,再加一个标识(任意字母)
字符串定义结束的时候需要重复标识,并且前面不能有任何空格或TAB符
这种方式定义的字符串里的变量可被正常解析
ICE;
//注意最后一行的标识
20、一些常用的字符串处理函数,不需要全部牢记,但至少要知道有这些函数,这样可以在使用的时候再去查具体的用法,至少可以少走些弯路:
<?php
strlen(); //获取字符串的长度
trim(); ltrim(); rtrim(); //删除字符串两端多余的空格
strtolower(); strtoupper(); //将字符串转换成小写/大写
ucfirst(); ucwords(); //首字母大写、单词首字母大写
str_pad(); //字符串填充
str_rav(); //字符串反转
md5(); //对字符串进行MD5加密
number_format(); //格式化金额字符串
explode(); //将字符串分隔成数组
implode(); //将数组元素组合成字符串
echo(); print(); //输出一个字符串,echo可以同时输出多个字符串,注意这两个不是函数,而是关键字
printf(); //格式化并输出一个字符串
substr(); //截取字符串
strstr(); strrstr(); //查找一个字符串是否在另一个字符串中出现过
stristr(); //同上,是其不区分大小写的版本
strrchr(); strrstr(); strristr(); //同上,逆序查找,及其不区分大小写的版本
strpos(); stripos(); //查找一个字符串在另一个字符串中首次出现的位置
strtok(); //拆分字符串,每次调用获取一个子串而不是输出一个数组
parse_str(); //解析一个查询字符串到变量或数组
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。