PHP基本语法(二)

时间:2023-03-10 06:04:14
PHP基本语法(二)

重点,哪些情况我们会将其它类型的值视为bool值的假:】
1. 整型的0会视为bool值的假来执行,任何非0的整型都视为真
2. 浮点的0.0不论后面有多少个0都视为假0.000000000,后面只要有一个非0值就为真
3. 字浮串的’0’,视为假,其他值全视为真来处理
4. 空字符串视为bool值的假‘’,只要中间有个空格都算真!
5. 空视为假处理(注意)
6. 数组当中一个东西都没有,就是空数组。就视为假来处理。当中只要有一个值,这个值即使为假或者空都视为真
7. 未声明成功的资源

#bool类型
$bool=true; /* 不要加引号*/
$bool=false; 1.整形 $bool=0; 假 非空为真
2.布尔型 $bool=null; 假 为空
3.浮点型 $bool=‘0’ 假
$bool=‘0.0’ 真 /*这个特殊*/
4.字符型 $bool=''; 假
$bool=""; 假
$bool=' '; 真 /*注意空格,这个特殊*/
$bool=" "; 真 /*注意空格,这个特殊*/
5.空数组 $bool=array(); 假
对象 $bool=object(); 假
资源 $bool=resource(); 假

判断空的函数:(重点)
Empty(只传一个变量),当传进去的变量为0,为false,为空,(只要为假的情况就返回真)(是否为空)

Isset(变量1,…,变量n) 可以传入一个或多个变量,只要当中有一个变为null,就返回false(是否被设置)

变量的引用:

变量的引用问题:
<?php
$a=60; $b=&$a;
//这个真正的意思是:把$a和$b同时指向同一个地方,以后无论换a的值还是b的值,(说白了,就是给$b起一个小名,都是一个值)
//它的地址还是指向a的;
$a=200;
$b=300;
echo '$a='.$a; //结果为$a=200
echo '<br/>';
echo '$b='.$b; //结果为$b=200
?>

常量的声明:

1.在运行过程当中值不发发生变化。
2.常量在运行过程当中值不可以被修改和删除
3.常量是全局的
4.常量用的值,我们通常只用标量
5.常量可以小写,但是为了更好的区分这是常量,通常大写。

注意:
调用常量,禁止在外加引号,双引单引都不行。这样的话是读取字符串

常量定义:

define('常量名','常量值');
define('ABC','发大财'); //这里ABC不加$,后面常量可以是整形,或者浮点型。

规则如下:
1.常量名:字母(一般大写),下划线,数字(不能开头)
2.常量值:只能用标量.
3.常量在运行过程当中不可以被重新赋值.
4.unset(ABC);不能删除 //我们数据库的地址,不用改变,我们用它的特性来定一个常量
5.常量是全局的
6.常量名通常大写

PHP超全局数组及外部变量

超全局数组:

$_POST      post传值
$_GET get传值,可以在浏览器的地址栏来直接传值

注意:

post发送的内容只能用post来接收,而get发送的内容只能用get接收
$_REQUEST   post与get模式都可以接收到

$_REQUEST   post与get模式都可以接收到

数据类型:
有时候我们只需要获取数据的类型,这时我们就需要判断类型的函数

is_float()类型:判断是不是浮点型

$b=3.2;
if(is_float($b)){
echo '真';
}else{
echo '假'
}
//结果为:真

is_int()类型:判断是不是整型

  $a=99; 
if(is_int($a)){  
echo '真'; 
}else{  
echo '假'; 

//结果是:真

is_bool()类型: 判断是不是布尔型

$a=false;
if(is_bool($a)){
 echo '真';
}else{ 
echo '假';
}
//结果是:真

is_string()类型:判断是不是字符串

$a='abc';
 if(is_string($a)){ 
echo '真';
}else{
  echo '假';
}
//结果为真

is_array()类型:判断是不是数组

<?php 
$a=array(1,2,3,4,5,6,);
if(is_array($a)){ 
echo '真';
}else{  
echo '假';
}
//结果为真

is_null()类型:判断是不是空

$a=null;
if(is_null($a)){ 
echo '真'; 
}else{ 
echo '假';
}
//结果为:真

is_object()类型:判断是不是对象

···
is_numeric()类型:判断是不是数字

···
is_callable()类型:判断是不是函数

···

自动类型转换:
发生情况:

第一.在运算的时候
第二. 在判断的时候

当bool值与整型相运算的时候:
1.将bool值的真变为整型的1来执行
2.将bool值的假变为整型的0来执行
 
当bool值与浮点进行运算的时候:
1.bool值的真会变为浮点的1.0来参与运算
2.bool值的false会变为浮点的0.0

当字符串与一个整型或浮点相加的时候:
1.会将后面的字符串全部干掉
2.只会将前面的数值和对应的整型或浮点相运算
3.如果字符串参与运算的时候必须要数值放在最前面。如果放到中间或者后面,会视为0来运算