代码
<!-- php文档 -->
<?php
echo '创建一个求和函数 : ';
function sum($a,$b)
{
return 'a+b='.($a+$b);
}
echo sum(20,80);
echo '<hr>';
$email='275374165@qq.com';
echo 'echo $email; 打印结果 : ';
echo $email;
echo '<hr>';
echo 'print $email; 打印结果 : ';
print $email;
echo '<hr>';
echo 'print_r($email); 打印结果 : ';
print_r($email);
echo '<hr>';
echo 'var_dump($email); 打印结果 : ';
var_dump($email);
echo '<hr>';
echo 'var_exprot($email); 打印结果 : ';
var_export($email);
echo '<hr>';
// 变量命名(区分大小写)
// 必须由以下三种字符组成: 大小写的英文字母, 下划线, 数字, 且不能以数字开始
$username='白居易';
$Username='贺知章';
echo '$username='.$username;
echo '$Username='.$Username;
echo '<hr>';
// php变量是弱类型
$var=100;
var_dump($var);
$var='弱类型';
var_dump($var);
echo '<hr>';
//1. 值传递 : 只是将$age1变量的值赋值给了一个新变量age
$age1=50;
$age=$age1;
echo '值传递 : '.'age1='. $age1;
echo ' age='.$age;
// 更新
$age1=30;
echo ' 更新了 : '.'age1='. $age1;
echo ' 但 age='.$age.'不变';
echo '<hr>';
// 2. 引用传递:相当于给原变量起了一个别名。引用符:&
$age1=20;
$age2=&$age1;
echo 'age2引用age1 : '.'age1='. $age1;
echo ' age2='.$age2;
// 更新
$age1=18;
echo ' 更新了'.'age1='. $age1;
echo ' age2='.$age2.'同步变化';
echo '<hr>';
// 可变变量
$name='姓名';
$$name='王维';
echo $姓名;
echo '<hr>';
$Name;
// $Name='孟浩然';
// 变量删除/销毁
// unset($Name);
// 检测与删除变量
if(isset($Name)){
echo $Name,'<br>';
}else {
echo '变量未定义';
}
echo '<hr>';
// 数据类型
// 1. 基本类型
// 字符串: string
$name = '张三';
// 数值: int, float
$age = 38;
// 布尔: true / false
$isyoung = true;
echo gettype($isyoung),'<hr>';
// 2. 复合类型
// 对象
$obj = new stdClass;
$obj->email = 'a275374165@qq.com';
echo $obj->email . '<br>';
// 数组
$arr = ['手机', 2000, 'huawei'];
// $str=print_r($arr, true);
// echo '<pre>'.$str.'</pre>';
echo '<pre>'.print_r($arr, true).'</pre>';
// 3. 特殊类型
$num = null;
var_dump($num);
// 资源类型, 文件
$f = fopen('demo415.php','r');
var_dump($f);
echo gettype($f),'<hr>';
if (gettype($f) === 'resource') {echo 'demo415.php是一个文件';}
?>
运行结果
总结:
1、echo和var_dump满足一般打印输出要求;
2、变量区分大小写;
3、php标识符用有意义的、大小写字母、下划线、数字(不能开头);
;.等标点符号一定要用英文输入状态!!!否则语法出错。
引用自定义函数一定要正确!!!否则语法出错。
4、值传递和引用传递的区别:引用相当于是变量的别名,能同步变化;值传递当下才赋值,不能同步变化。
5、可变变量: 变量的标识符/变量名称,可以动态的改变, 变量名可以来自另一个变量
6、变量已定义未初始化,返回null值。
7、几个有用的函数:
isset()——判断变量是否存在
unset()——删除变量
is_null()——判断变量是否定义但未初始化(第一次赋值)
empty()——判断变量是否为空(比如判断表单输入)
gettpye()——返回变量类型
8、数据类型:3中基本型,2中复合型,2种特殊型