博客列表 >0411PHP对字符串的处理规则

0411PHP对字符串的处理规则

丝丝心动的博客
丝丝心动的博客原创
2018年04月12日 19:59:42521浏览

通过对PHP对字符串的处理规则的学习,让我认识到PHP对字符串的输出有一定的规则包装解析,以达到我们想要的效果。如输出字符串时,单引号原样输出,双引号会将内容解析输出,双引号会将变量,特殊字符进行解析。

PHP对字符串的处理规则代码:

<meta charset="utf-8">
<?php 
header("Content-type:text/html;charset=utf-8");

//创建变量
$money = '1000亿美元';
//会将$符后面尽可能多的字符解析为变量名
$title1 = '特朗普说将要对中国商品加收$money的关税!';
//把:$后面的money的关税!全部识别为变量了
echo $title1;
echo '<hr>';
//最好用花括号{}添加一个变量定界符
$title2 = '特朗普说将要对中国商品加收{$money}的关税!';
echo $title2;
//双引号包装的字符串可以解析内部的变量名
$title3 = "特朗普说将要对中国商品加收{$money}的关税!";
echo '<br>';
echo $title3;
echo '<hr>';
//使用转义字符:反斜线,将原字符进行转义,使其失去原有的作用来实现在字符串输出定界符
echo '习大大:\'中国开放的大门会越来越大\'';
// 双引号也是一样的
echo '<br>';
echo "习大大:\"中国开放的大门会越来越大\"";
echo '<br>';
//第二种方案,使用与定界符不同类型的引号:双引号
echo '习大大:"中国开放的大门会越来越大"';
//特殊字符:
//如果要输出转义字符:\自身,连写二个将自身转义就可以
echo '<br>';
echo 'php中的转义字符是: \\'; 
//类似的还有回车\r,换行符\n,制表符\t,美元符\$等
echo '<br>';
//单引号会原样输出,不会解析换行符
echo '今天你有想我吗?\n 没有';
echo '<br>';
//双引号会对特殊字符进行解析
//在页面中只会看到一个空格,但是在源代码中的确是换行了
echo "今天你有想我吗?\n 没有";
echo '<hr>';
//nl2br($string)将字符串中的\n用<br>进行替换
echo nl2br("今天你有想我吗?\n 没有");
//关于双引号中的变量会被解析,刚刚说过了,如果不想让变量被解析,怎么做呢?
$siteName = '拼多多';
echo '<hr>';
//双引号中的变量会被解析出来
echo "应用{$siteName}";
echo '<br>';
//对$进行转义: \$,就是会原样输出了,不会再解析
echo "应用{\$siteName}";
//除了用引号做为字符串定界符外,还有二种声明字符串的方法
//heredoc和nowdoc
echo '<hr>';
$heredoc = <<< HEREDOC
{$siteName}"习大大4月12日观看海军检阅海军并发表讲话"!\n
HEREDOC;
echo $heredoc;
// 换行
echo '<hr>';
echo nl2br($heredoc);

  // nowdoc功能:与单引号创建的字符串基本一致
  // 1. 将内容原样输出,不解析变量和特殊字符
  // 2. 可以直接使用单引号,不需要转义
 
$nowdoc = <<< NOWDOC
 <h3>$siteName</h3> \r\n 'www.pdd.com'
NOWDOC;
echo '<hr>';
echo $nowdoc;

PHP对字符串的处理规则效果:

1.png

总结:通过对PHP对字符串的处理规则的学习,让我认识到PHP对字符串的输出有一定的规则包装解析,以达到我们想要的效果。如输出字符串时,单引号原样输出,双引号会将内容解析输出,双引号会将变量,特殊字符进行解析。输出不同的内容,需要使用不同的包装器,或者叫定界符,单引号和双引号,就是字符串类型的包装器,这与js是一样的。heredoc可以将内部的变量和特殊字符进行自动转义(不需要转义字符),功能:与双引号创建的字符串基本一致。nowdoc将内容原样输出,不解析变量和特殊字符,可以直接使用单引号,不需要转义,功能:与单引号创建的字符串基本一致。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议