PHP文字列

无忌哥哥
无忌哥哥オリジナル
2018-06-27 17:30:221876ブラウズ

<meta charset="utf-8">
<?php 
header("Content-type:text/html;charset=utf-8");
// 输出字符串时,单引号与双引号的区别,
// 输出不同的内容,需要使用不同的包装器,或者叫定界符,单引号和双引号,就是字符串类型的包装器,这与js是一样的,
// 如果是纯字符串,推荐使用单引号,如果字符串有变量或者特殊字符的话,
// 记忆: 单引号原样输出,双引号会将内容解析输出,
// 那么:双引号会将哪些内容解析呢?二类: 1.变量, 2.特殊字符
//创建变量
$money = &#39;95亿美元&#39;;
$title1 = &#39;阿里$money收购了饿了么!&#39;;
//双引号包装的字符串可以解析内部的变量名
//会将$符后面尽可能多的字符解析为变量名
//把:$后面的money收购了饿了么全部识别为变量了
// $title2 = "阿里$money收购了饿了么!";
//最好用花括号{}添加一个变量定界符
$title2 = "阿里{$money}收购了饿了么!";
echo $title1;
echo &#39;<br>&#39;;
echo $title2;
echo &#39;<hr>&#39;;
//如果要在字符串输出定界符,怎么办?
//使用转义字符:反斜线,将原字符进行转义,使其失去原有的作用
echo &#39;郭德纲:\&#39;你无耻的样子很有我当年的神韵\&#39;&#39;;
// 双引号也是一样的
echo &#39;<br>&#39;;
echo "郭德纲:\"你无耻的样子很有我当年的神韵\"";
echo &#39;<br>&#39;;
//第二种方案,使用与定界符不同类型的引号:双引号
echo &#39;郭德纲:"你无耻的样子很有我当年的神韵"&#39;;
//特殊字符:
//如果要输出转义字符:\自身,连写二个将自身转义就可以
echo &#39;<br>&#39;;
echo &#39;php中的转义字符是: \\&#39;; 
//类似的还有回车\r,换行符\n,制表符\t,美元符\$
echo &#39;<br>&#39;;
//单引号会原样输出,不会解析换行符
echo &#39;明天会下雨吗? \n 不会的&#39;;
echo &#39;<br>&#39;;
//双引号会对特殊字符进行解析
//在页面中只会看到一个空格,但是在源代码中的确是换行了
echo "明天会下雨吗? \n 不会的";
echo &#39;<hr>&#39;;
//如果想在页面中看到换行效果,可以使用函数进行处理一下
//nl2br($string)将字符串中的\n用<br>进行替换
echo nl2br("明天会下雨吗? \n 不会的");
//关于双引号中的变量会被解析,刚刚说过了,如果不想让变量被解析,怎么做呢?
$siteName = &#39;PHP中文网&#39;;
echo &#39;<hr>&#39;;
//双引号中的变量会被解析出来
echo "站点名称{$siteName}";
echo &#39;<br>&#39;;
//对$进行转义: \$,就是会原样输出了,不会再解析
echo "站点名称{\$siteName}";
//除了用引号做为字符串定界符外,还有二种声明字符串的方法
//heredoc和nowdoc
/**
 * heredoc结构
 * 功能:与双引号创建的字符串基本一致
 * 1.可以将内部的变量和特殊字符进行自动转义(不需要转义字符)
 * 2.可以直接使用双引号,而不需要转义
 * 
 */
echo &#39;<hr>&#39;;
// $heredoc = <<< "HEREDOC"
$heredoc = <<< HEREDOC
{$siteName}致力于打造一站式免费学习平台,誓将"公益"进行到底!\n
这里是PHP爱好者共同的家园,我们热忱欢迎来自全国各地的PHP爱好者~~
HEREDOC;
echo $heredoc;
 /**
  * 为什么没有看到\n的换行效果呢?是不是没有转义呢?事实上已经自动转义了
  * 因为你已经看不到\n,它在页面中显示一个空格。如果想在页面中看到换行效果
  * 可以使用函数 nl2br()
  */
echo &#39;<hr>&#39;;
echo nl2br($heredoc);
/**
 * nowdoc
 * php5.3+
 * 功能:与单引号创建的字符串基本一致
 * 1. 将内容原样输出,不解析变量和特殊字符
 * 2. 可以直接使用单引号,不需要转义
 */
$nowdoc = <<< &#39;NOWDOC&#39;
<h3>$siteName</h3> \r\n &#39;www.php.cn&#39;
NOWDOC;
echo &#39;<hr>&#39;;
echo $nowdoc;

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。