0
点赞
收藏
分享

微信扫一扫

PHP学习 Day_02



文章目录

  • 数据类型
  • 字符串型

数据类型

  • 数据类型即对数据分类的一个划分
  • 整型即整数(integer)
  • 布尔型(boolean)即判断类型,就是真(true)和假(false)
  • 字符串


  • true和false外面不要引号!!!
  • 没有变量成员的对象,变量值为NULL
  • 一般来说,​​true​​表示条件成立,可以理解为1,​​false​​则表示条件不成立,可以理解为0



echo

  • 输出、显示
    • echo 是在PHP里面最常用的一个输出、显示功能的命令。
      例:

<?php

echo 123;

?>

<?php

$iphon6 =6088;

echo $iphon6;

?>


字符串型

  • PHP中声明字符串的三种方式
  • 用单引号声明
  • 用英文半角的单引号将字符串包起来
  • 用双引号声明
  • 在字符串两边加上双引号
  • 用字界符声明(需要输入非常大段的字符串时使用)


  1. 在变量后面的等号写三个小于号(<<<)
  2. 然后在<<<后面写上字符(建议英文大写字符)
  3. 然后换行写上任意想写的字符
  4. 写完后,顶行,在行最开始处再写上<<<后面的字符和分号


<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$zuijia = <<<ABC

我们最好的遇见<br/>

<i>现在</i>
这样的<h1>四月</h1>
ABC;

echo $zuijia;

?>


双引号和单引号有什么区别呢?​(PHP面试题中的高概率面试题)


  • 双引号解析变量,但是单引号不解析变量
  • 在双引号里面插入变量,变量后面如果有英文或中文字符,它会把这个字符和变量拼接起来,视为一整个变量。一定要在变量后面接上特殊字符,例如空格等分开
  • 如果在双引号里面插变量的时候,后面不想有空格,可以拿大括号将变量包起来
  • 双引号解析转义字符,单引号不解析转义字符。但,单引号能 解析​​\'​​ 和​​\​
  • 单引号效率高于双引号,尽可能使用单引号
  • 双号和单引号可以互插!!!双引号当中插入单引号,单引号当中插入变量,这个变量会被解析
  • 神奇的字符串拼接胶水——​​.​​点,用来拼接字符串
  • 我们将定界符声明字符串视为双引号一样的功能来看待

例:

1.双引号解析变量,但是单引号不解析变量

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$vae = '为了许嵩去卖肾';

echo "$vae <br/>"; //输出“为了许嵩去卖肾”

echo "$vae Will it be shown?<br>""; //输出“为了许嵩去卖肾 Will it be shown?”

echo '$vae'; //输出“$vae

echo "<br/>";

echo '$vae Will it be shown?'; //输出“$vae Will it be shown?”

?>

输出结果:

为了许嵩去卖肾 
为了许嵩去卖肾 Will it be shown?
$vae
$vae Will it be shown?


  • 由此可见,双引号需要解析变量,因此双引号的效率没有单引号高。为了更高效率通常使用单引号。


2. 在双引号里面插入变量,变量后面如果有英文或中文字符,它会把这个字符和变量拼接起来,视为一整个变量。一定要在变量后面接上特殊字符,例如空格等分开

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$bad = '坏坏';

$str1 = "$bab不坏"; //不加空格,会把“bad不坏”作为一个整体变量

$str2 = "$bad 不坏"; //加空格,会连接变量

$str3 = "$bad!!!Not Bad"; //使用特殊字符,使用特殊字符也可以连接变量

echo "$str1 <br/>"; //显示未定义变量

echo "$str2 <br/>"; //输出“坏坏 不坏 ”,这里会有空格

echo "$str3 <br/>"; //输出“坏坏!!!Not Bad”

?>

输出结果:

Notice: Undefined variable: bab不坏 in D:\phpStudy\PHPTutorial\WWW\1.php on line 7

坏坏 不坏
坏坏!!!Not Bad


  • 由此我们就验证了上述的观点。(此处的可以只定义一个str变量,多次修改更容易理解。)


3.如果在双引号里面插变量的时候,后面不想有空格,可以拿大括号将变量包起来

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$bad = '以梦为马';

$str = "{$bad}不负韶华"; //加入空格之后就不会显示空格

echo "$str <br/>"; //输出“以梦为马不负韶华”

?>

输出结果:

以梦为马不负韶华

4.双引号解析转义字符,单引号不解析转义字符。但,单引号能 解析​​\'​​ 和​​\​

  • 常用的转义字符:
  • ​\n​​ 回车
  • ​\t​​ 缩进
<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$string = "坚持一下\n给梦想\t一个机会"; //使用双引号定义变量

echo $string;

?>


在网页中显示的不明显,可以使用​F12​查看网页源代码。​​\n​​​显示的结果就像是按了回车键。​​\t​​显示的结果就像是按了一个​Tab​键。


<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$string = '坚持一下\n给梦想\t一个机会'; //使用单引号定义一个变量

echo $string;

?>

输出结果:

坚持一下\n给梦想\t一个机会


  • 可以看到单引号中的​​\t​​​和​​\n​​直接显示出来了,而没有编程按一次回车键和按一次​tab​键后的效果。所以双引号执行转义字符而单引号不执行转义字符。
  • 单引号效率高于双引号,尽可能使用单引号


5. 转义字符\(反斜线的使用)

  • 如果我们想要在声明的变量中加上双引号输出怎么办呢?按照我们正常的写法是这样的
<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$cup = "芯死了,感觉卟会再""了";

echo $cup

?>


但是明显,这样运行不出来结果,因为一个引号包含一个变量,这里突然多了这么多的引号,就无法判断了,就会出现500了。500状态码是内部错误的警告!那么用什么方法解决呢?


  • 将引号的原有意义去掉,即使用​转义字符​——​​\​​。转义字符不仅仅可以用于双引号,单引号也是同样的用法
<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$cup = "芯死了,感觉卟会再\"嗳\"了"; //使用转义字符

echo $cup

?>

运行结果:

芯死了,感觉卟会再"嗳"


这样就会达到我们想要的样子了。这句话是????肉肉说的,非主流少女就是她!


6. 双号和单引号可以互插!双引号当中插入单引号,单引号当中插入 变量,这个变量会被解析

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$ami = '江湖辽远';

$me = "君不见'$ami',我只想见你";

echo $me

?>

运行结果:

君不见'江湖辽远',我只想见你

7. 字符串拼接点,用来拼接字符串

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$bad = '以梦为马';

$str = "{$bad}不负韶华";

echo "$str <br/>";

?>


以上是我们在讲双引号可以解析变量的时候的代码,使用这种方式连接字符串也可以,但是问题是效率没有纯单引号高,而且如果我们有多个字符串需要拼接,那就会很麻烦了。


  • 使用​​.​​来拼接字符串
<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$name = 'I am Bad.';

$sex = 'I am a boy.';

$hobby = 'I like Roller Skating.';

$like = 'I like listen music.too.';

$end = 'You can ask me to play roller skating together!';

echo $name.$sex.$hobby.$like.$end;

?>

运行结果:

I am Bad.I am a boy.I like Roller Skating.I like listen music.too.You can ask me to play roller skating together!


这样我们直接使用变量名加​​.​​就可以实现字符串的拼接了,方便了很多。所以对于我们上面使用大括号的代码也可以进行优化。


<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$bad = '以梦为马';

$str = $bad.'不负韶华';

echo "$str <br/>";

?>

8. 将定界符声明字符串视为双引号一样的功能来看待

<?php
//使用utf-8编码,不然可能会出现乱码
header("Content-Type:text/html;charset=utf-8");

$weilai = '努力才有未来';

$mimang = '不努力就会迷茫';

$dingjie = <<<ABC

如果

'$weilai'

那么\t我一定会加倍努力

因为

'$mimang'

所以<br/>

我\n会

<i>努力</i>

变得<h1>更好</h1>

ABC;

echo $dingjie;

?>
效果可以自己尝试


由执行的结果可以看到,​​\n​​​、​​\t​​、双引号、单引号都可以被执行,显示。这就是定界符的特点。


以上内容,如有错误或不详,敬请指出。


本文作者: ​​ 坏坏 ​​


举报

相关推荐

0 条评论