欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP学习 Day_02

程序员文章站 2024-03-14 14:08:16
...

文章目录


数据类型

  • 数据类型即对数据分类的一个划分
    • 整型即整数(integer)
    • 布尔型(boolean)即判断类型,就是真(true)和假(false)
    • 字符串
  • true和false外面不要引号!!!
  • 没有变量成员的对象,变量值为NULL
  • 一般来说,1就为true,0为false

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、双引号、单引号都可以被执行,显示。这就是定界符的特点。

以上内容,如有错误或不详,敬请指出。
本文作者: 坏坏
相关标签: PHP学习笔记整理