php变量和基本语法

php的基本语法

  • 弱数据类型编码语言。
  • php可以和html混合编码,也可以单独编码。
  • 每一个语句以分号(;)结束。
  • 区分大小写。
  • 变量以$符号开头。
  • 变量有不同的数据类型。
  • 变量以字母或下划线开头,不能是特殊字符。
  • 可以看出,php的一些语法与C语言语法相同。

php的数据类型

  • 基本类型

    • 整型(integer)
    • 浮点类型(单精度(float)和双精度(double))
    • 布尔类型(boolean)
    • 字符串(string)
  • 复合类型

    • 数组(array)
    • 对象(object)
  • 特殊类型

    • 空值(NULL)
    • 资源类型(resource)

基本数据类型案例

<html>
<head>
<title>first</title>
</head>
<body>
<?php
	$i=10;
	echo "int类型:".$i;
	echo "<br/>";
	$i=10.01;
	echo "浮点类型:".$i;
	echo "<br/>";
	$i=true;
	echo "布尔类型:".$i;
	echo "<br/>";
	$i="天气真好";
	echo "字符串类型:".$i;
?>
</body>
</html>
  • 测试

在这里插入图片描述

  • 不能使用未赋值的变量
<html>
<head>
<title>first</title>
</head>
<body>
<?php
	$i;
	echo "int类型:".$i;
?>
</body>
</html>

在这里插入图片描述

  • 整型数据有八进制,十进制,十六进制。
<html>
<body>
<?php
	$i=0123;
	echo "i=".$i;
	echo "<br/>";
	$i=0xAA;
	echo "i=".$i;
	
?>
</body>
</html>

在这里插入图片描述

  • php不支持无符号整数(与C语言不同)。
  • PHP_INT_SIZE表示整型占几个字节;PHP_INT_MAX表示整型最大值。
<html>
<body>
<?php
	echo PHP_INT_SIZE;
	echo "<br/>";
	$i=PHP_INT_MAX;
	echo "i=".$i;
?>
</body>
</html>

在这里插入图片描述

  • 给定一个变量超过了整型范围,将被解释为浮点类型(float)。

  • 布尔类型两个值:true和false。

  • 以下值被当做false

    • false本身
    • 整型0
    • 浮点型0.0
    • 空字符串,字符串"0"
    • 不包含任何元素的数组
    • 不包括任何成员变量的对象
    • 特殊类型NULL
<html>
<body>
<?php
	$a=0;
	if($a==false)
		echo "假1";
	echo "<br/>";
	$a=0.0;
	if($a==false)
		echo "假2";
	echo "<br/>";
	$a="";
	if($a==false)
		echo "假3";
	echo "<br/>";
	$a="0";
	if($a==false)
		echo "假4";
	echo "<br/>";
	$a=NULL;
	if($a==false)
		echo "假5";
?>
</body>
</html>

在这里插入图片描述

  • 浮点数精度14位,从左边数第一个非0数是精度开始。
<html>
<body>
<?php
	$a=0.1234567891011299;
	echo $a;
	echo "<br/>";
	$a=0.00001234567891011299;
	echo $a;
?>
</body>
</html>

在这里插入图片描述

  • 字符串大小无限制,不超过内存即可。
  • 字符串可用单引号,也可用双引号,但有些许区别。
<html>
<body>
<?php
	$a=88;
	$b="abcd$a";
	echo $b;
	echo "<br/>";
	$b='abcd$a';
	echo $b;
	echo "<br/>";
	$b="abcd\"";
	echo $b;
	echo "<br/>";
	$b='abcd\"';
	echo $b;
?>
</body>
</html>

在这里插入图片描述

  • 与C语言不同,php数据类型自动转换,即变量类型不由程序员指定,是由该变量使用的上下文在运行时决定,可以通过var_dump($变量)来获取类型。
<html>
<body>
<?php
	$a=88;
	echo var_dump($a);
	echo "<br/>";
	$a=88.88;
	echo var_dump($a);
?>
</body>
</html>

在这里插入图片描述

算术运算符

  • +
  • -
  • *
  • /
  • %
  • ++(自加)
  • --(自减)
  • 自加与自减的原理和C语言相同,后++为先赋值再自加1,前++为先自加1再赋值
<html>
<body>
<?php
	$a=88;
	echo $a--;
	echo "<br/>";
	echo $a;
	echo "<br/>";
	$b=89;
	echo ++$b;
	echo "<br/>";
	echo $b;
	echo "<br/>";
?>
</body>
</html>

在这里插入图片描述

  • +=
  • -=
  • *=
  • /=
  • %=

比较运算符

  • $a==$b,等于为true
  • $a===$b,全等(值相等,类型也相同)为true
  • $a!=$b,不等于为true
  • $a<>$b,不等于为true
  • $a!==$b,非全等(值不等,或者类型不同)为true
  • $a<$b,小于为true
  • $a>$b,大于为true
  • $a<=$b,小于等于为true
  • $a>=$b,大于等于为true
<html>
<body>
<?php
	$a=88;
	$b=88.0;
	if($a==$b)
		echo "相等<br/>";
	if($a===$b)
		echo "全等<br/>";
	else
		echo "不全等<br/>";
	$c=88.0;
	if($b===$c)
		echo "全等<br/>";
?>
</body>
</html>

在这里插入图片描述

逻辑运算符

  • $a && $b 或者 $a and $b,$a和$b全为true则为true

  • $a || $b 或者 $a or $b,$a和$b任一一个为true则为true

  • !$a,$a不为true则为true

  • “与”和“或”有两种形式的原因在于优先级不同。

    • &&的优先级比=(等号)高
    • ||的优先级比=(等号)高
    • and的优先比=(等号)低
    • or的优先比=(等号)低
    • &&的优先级比and高
    • ||的优先级比or高
<html>
<body>
<?php
	$a=false||true;
	$b=false or true;
	echo var_dump($a,$b);
?>
</body>
</html>

在这里插入图片描述

三元运算符

  • 表达式(expr1)?(expr2):(expr3)
  • 假若expr1为true,则执行expr2;假若expr1为false,则执行expr3
<html>
<body>
<?php
	$a=88;
	$b=99;
	echo $a>$b?$a:$b;
?>
</body>
</html>

在这里插入图片描述

字符串运算符

  • 小点(.)将字符串连接起来。
  • .=
  • 当两个变量用小点(.)连接时,表示将它们的内容连接。
<html>
<body>
<?php
	$a=88;
	$b=99;
	echo var_dump($a.$b);
	echo "<br/>";
	$c="hello";
	$c.=$b;
	echo var_dump($c);
?>
</body>
</html>

在这里插入图片描述

类型运算符

  • instanceof用于确定一个php变量是否属于某一个类class的实例。
<html>
<body>
<?php
	class A1{}
	class A2{}
	$a=new A1;
	echo var_dump($a instanceof A1);
	echo "<br/>";
	echo var_dump($a instanceof A2);
?>
</body>
</html>

在这里插入图片描述

运算符的优先级

在这里插入图片描述

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术工厂 设计师:CSDN官方博客 返回首页