变量的 8种数据类型**
// 变量的 8种数据类型
// 4标量 整数 布尔 字符串 浮点 2复合 对象 数组 2特殊 null 空 resource 资源型
// 整数类型 int
$int = 123444;
var_dump($int);
echo '</br>';
//字符串类型 string;
$string = 'aaaad';
var_dump($string);
echo '</br>';
// 浮点类型 float
$float = 32.1;
var_dump($float);
echo '</br>';
// 布尔类型 boolean
$boolean = true;
if($boolean = 1){
echo '你好';
}
// 对象 类型
class NBA{
}
$zms = new NBA;
// 数组 类型
// 1. 索引数组 下标为整型的数组
$arr = ['1','ccc','ssss'];
$arr1 = array(11,2,333,4444);
var_dump($arr);
echo '</br><pre>';
var_dump($arr1);
// 2. 关联数组 下标为字符串 或者其他类型的 数组
$arr2 = ['name'=>'小明',2=>'班级'];
echo '</br><pre>';
var_dump($arr2);
// resource 资源类型
$log = fopen('log.text','w');
var_dump ($log );
// null 空类型
$apple = null;
$oppo = 123;
// isset() 检查变量是否被设置 如果为null 则返回 fales !取反后可以用来检查是否为空
if(!isset($apple)){
echo 'null';
}
echo '</br>';
unset($oppo); // unset() 释放变量的值 让他为null
if(!isset($oppo)){
echo 'null';
}
PHP数据类型转化
$a = (int)$_GET['a'];
var_dump($a);
if($page === 10){
echo '数据正常';
}else{
echo ' 非法数据';
}
echo gettype($a);
echo gettype((string)$a);
var_dump(gettype((string)$a)); // 临时转换数据类型 在输出变量前面+ (数据类型)
echo gettype($a);
// 系统自动转换
$b = '10a';
$b += 12;
echo '</br>';
var_dump($b);
echo '<hr>';
// 永久改变 变量数据类型
$c = 1;
settype($c,'string');
echo gettype($c);//integer
PHP变量和常量
// 变量
// 变量赋值
$a = 1;
$b = $a ;
var_dump($a);
echo '</br>';
var_dump($b);
echo '</br>';
$a=10;
// 传值赋值 当 变量 a 重新赋值时 变量b 没有改变 不同的值内空间地址
var_dump($a);
echo '</br>';
var_dump($b);
echo '</br>';
//引用赋值 变量A = &变量B 值会随着变量A 改变而改变 同一个值内空间地址
$price1 = 8888;
$price2 = &$price1;
printf('$price1的值为%d,$price2的值为%d<br>',$price1,$price2);
echo '</br>';
$price1 = 7999;
printf('$price1的值为%d,$price2的值为%d<br>',$price1,$price2);
// 变量的 检测
//isset()检测变量是否被定义 存在并且不为null返回true, 否则返回false
//empty()检测一个变量是否为空, 为空才返回true 不为空返回false
$name = '小明';
$cc = '';
// 变量被定义返回 true 为null 返回 false
if(isset($name)){
echo $name;
}
// 检测变量 null 返回 true 被定义则返回 false
echo '</br>';
if(empty($cc)){
echo '显示为空';
}
// unset() 释放变量
unset($name);
echo '</br>';
if(empty($name)){
echo '显示为空';
}
echo '<hr>';
// 常量
// 常量定义 2种方式
// define(常量名 常量值 true) 可选参数true 设置时则表示大小写不敏感
// 常量定义 必须初始化命名 命名推荐全部大写
define('MESSAGE','我是一名PHP程序员');
echo MESSAGE;
const SCHOOL = '深圳大学';
echo '</br>';
echo SCHOOL;
class User{
// 类常量只能用const关键字声明
const APP_PATH = "/0802/part1";
}
// constant() 获取常量函数 将A常量放入A变量的值中 通过函数输出A变量的值 则可以打印 A常量的值
// defined() 检测常量是否被定义 如果定义 返回 ture 没有则返回 flase
$ZY = "MESSAGE";
echo constant($ZY);