标签:索引 数据类型 inf 字符串 logs eof boolean var_dump span
1、定界符 ‘‘ "" heredoc nowdoc php中,双引号会替换变量的值(解析变量),而单引号会把它当做字符串输出(不解析变量) $name = "jiao"; echo(‘$name‘); //$name echo("$name"); //jiao
当内容和定界符冲突时需要转义 $name = "\"fftu\""; ""解析所有转义字符 ‘‘只解析 \\ \‘ echo("hello{$name}s"); echo("hello ${name} s"); ()中不能有空格 2、字符串下标访问和修改字符串内容 $name = ‘jiao‘; $name[2] = "h"; //一个字符替换一个字符 echo($name); 以上只能替换一个字符。由于中文一般为3个字符,所以不能以这种方式替换 $name[strlen($name)] = "m"; //尾端添加一个字符 echo($name{mt_rand(0, strlen($name) - 1)}); //从一个字符串中随机取出一个字符 实例:
将一个字符串随机排列 $str_sum = ""; for($i = 0; $i < strlen($name); $i++){ $str_sum .= $name{mt_rand(0, strlen($name) - 1)}; } echo($str_sum); 生成一个随机4位验证码 $str_sum = ""; for($i = 0; $i < 4; $i++){ $str_sum .= $name{mt_rand(0, strlen($name) - 1)}; } echo($str_sum);
3、php生成html元素
echo(" <div class=‘container‘> <div class=‘panel panel-info‘> <div class=‘panel-heading‘> <h3>heading</h3> </div> <div class=‘panel-body‘> body </div> </div> </div> ");
heredoc语法结构(相当于""效果)
$panel_1 = <<<EOF <div class=‘container‘> <div class=‘panel panel-info‘> <div class=‘panel-heading‘> <h3>heading</h3> </div> <div class=‘panel-body‘> <p>$name</p> //变量会被解析 </div> </div> </div> EOF; //结束标记 echo($panel_1); <<<EOF之后和EOF之前不能有任何空格、制表符,只能是回车 其中所有的转义字符都会被解析 相比于第一种写法的好处://""和‘‘都可,EOF只是效果类似于定界符,但不是定界符 php5.3之后,EOF标记可以自定义 $panel_1 = <<<PANEL_1 //或者"PANEL_1" <div class=‘container‘> <div class=‘panel panel-info‘> <div class=‘panel-heading‘> <h3>heading</h3> </div> <div class=‘panel-body‘> <p>$name</p> </div> </div> </div> PANEL_1; echo($panel_1);
nowdoc语法结构
$name = "fftu"; $panel_1 = <<<‘EOD‘ <div class=‘container‘> <div class=‘panel panel-info‘> <div class=‘panel-heading‘> <h3>heading</h3> </div> <div class=‘panel-body‘> <p>$name</p> </div> </div> </div> EOD; echo($panel_1); 与heredoc的区别:‘‘和""都可以使用,但变量不会被解析,class效果可以显示
4、不同数据类型转换为字符串 boolean true -> "1" false -> "" null -> "" array -> 报错 资源 -> 资源句柄 $file_1 = fopen("text.txt", "r"); echo($file_1 . "<br>"); //Resource id #3 强制转换 $a = 889; $b = (string)$a; print_r($b); 永久转换 $a = 78; var_dump($a); echo("<br>"); settype($a, "array"); var_dump($a); echo("<br>" . gettype($a)); 字符串转换为数字
如果是数字开头,取合法数字,否则为0 $a = "p2"; echo(4 + $a); !$a 字符串不存在 $a = false; $a = ‘‘; $a = 0; $a = null; $a = ‘ ‘; //a存在 5、字符串常用函数
$string_1 = "hello jiao";
echo(strlen($string_1)); //返回字符串长度
echo(strpos($string_1, "ji")); //返回要查找的字符串的起始索引
echo(is_string($str_1)); //检测变量是否为字符串
echo(substr($name, 6)); //从指定索引开始截取字符串
echo(strtoupper($name)); //向上转型
echo(strtolower($name)); //向下转型
标签:索引 数据类型 inf 字符串 logs eof boolean var_dump span
原文地址:http://www.cnblogs.com/jiaoxuanwen/p/6662075.html