批改状态:合格
老师批语:还有命名规范!要加快速度了。
// php程序由哪几部分组成?// 代码function sum(int $a,int $b){// 返回结果给调用者return "$a + $b =".($a+$b);}// 执行,将执行结果打印输出echo sum(30,40);

<?php// php打印输出$email = 'admin@php.cn';// echo 回显,效率最高,没有返回值echo $email, '<br>';echo '<span style="color:red;">'.$email.'</span>';echo '<hr>';// print与echo 区别// 1. echo 可以打印多个变量,且没有返回值// 2. print 仅能打印单个变量, 返回1echo print $email;echo '<hr>';// 查看变量类型,只能返回类型echo gettype($email)."<br>";// var_dump()想获取到变量的完整的信息var_dump($email);echo '<br/>';var_dump(12343);echo '<hr>';// var_export(): 返回一个变量的字符串表示(源代码)var_export($email);
运行结果截图
<?php// 变量的命名// 变量是临时存储数据的容器// 变量是实现数据复用的手段$username = "admin";$userName = "peter";// 1. 变量区分大小写echo "$username=".$username."<br> UserName=".$userName;echo '<br>';// 2. 函数是不区分大小写echo strtoupper($userName);echo '<br>';echo STRTOUPPER($userName);// 3. 变量名必须以"$"开始echo '<br>';// $hello = 'php';// echo $hello;//4.变量标识符不允许用数字开始// 如下例,会报错// $123a = "phpcn";// echo $123a;// 5.变量允许使用下划线开始$_email = 'qbh@qq.com';echo $_email;//6. 变量名不允许使用特殊字符,@// $aad@c = "phpcn";// echo $aad@c;echo '<br>';//7.变量标识符: $开始,仅允许字母,下划线和数字,且不允许使用数字开始// 中文可以用作变量名,但不推荐$我的邮箱 = "php@php.cn";echo $我的邮箱;// 无意义, 不要用,变量名要望文生义$aaa = "phpcc";$_ = 1234;
运行结果截图
<?php// 变量的动态: 是指变量的类型可以随值而变化$var = 100;var_dump($var);echo "<hr>";$var = 'php.cn';var_dump($var);
运行结果截图
// 变量的有值传递与引用传递二种方式赋值// 1. 值传递,也是默认的方式$price1 = 100;$price2 = $price1;echo $price2;echo "<br>";// 更新price2$price2 = 1992;// 查看price1echo "price1=".$price1."<hr>";// 总结,值传递时,变量相互独立,不受影响// 2. 引用传递$price1 = 100;// 在等号的右边/右值前面加上&(取地址符)// 当前$price2中保存的并不是99, 而是$price1变量在内存中的地址, [0xabcd1234] = 99$price2 = &$price1;echo $price2;echo "<br>";// 更新price2$price2 = 199;// 查看price1, 会发现print1与price2同步更新了echo 'price1 = ' . $price1 . '<hr>';
运行结果截图
<?php// 可变变量$var = 'email';echo "<br>";// $email = 'admin@php.cn';// 变量名可以动态的创建,给变量加一个$符,可以动态创建变量名$$var = 'admin@php.cn';echo $email;
运行结果截图
<?php// 变量的检测与删除// 打开所有的报错error_reporting(E_ALL);// echo $username;// 变量检测$username = 'Joe';$username = null;// isset():如果该变量存在且值不为null才是trueif(isset($username)) echo $username;else echo '没有定义该变量'.'<br>';// unset():删除变量, 没有返回值// unset($username);// echo $username;$var = '';if(empty($var))var_dump($var).'<br>';
运行结果截图
<?php// 数据类型// 基本类型, 复合类型, 特殊类型// 1. 基本类型// 1.1 字符串$name = '手机';echo $name;echo '<br>';// 1.2 数值$price = 2980;echo $price;echo '<br>';// 1.3 布尔$is5G = false;// echo $is5G;var_dump($is5G);echo '<br>';// 2. 复合类型, 对象,数组// 2.1 对象$obj = new stdClass;// 对象是属性和方法的无序集合$obj->name = "peter zhu";$obj->age = 35;echo $obj->name;echo '<br>';echo $obj->age.'<hr>';// 2.2数组$arr = ['电脑',5000,'Dell'];// print_r()以人性化的方式打印变量,true表示不直接打印,而返回// 返回就是一定要有一个接收者// 打印数组方式1print_r($arr);// 打印数组方式2$str = print_r($arr,true);echo '<pre>'.$str.'</pre>';// 基本类型: 标量, 单值// 复合类型: 多值,// 3. 特殊类型//NULL$null = NULL;var_dump($null);echo '<br>';// $f就是文件资源类型$f = fopen('demo2.php','r');var_dump($f);echo '<br>';echo gettype($f);
运行结果截图
<?php// 变量的类型转换// 自动转换: 是由php系统偷偷进行的,不需要用户主动参与$a = null;$b = true;$c = false;$d = 'g5';$ds = "5g";$e = 'php';$f = 15;// null在算术运算中自动转为0echo $a + 10, '<br>';// true在算术运算中转为1echo $b + 10, '<br>';// echo $d + 10, '<br>';// echo $ds + 10, '<br>';// echo $e + 10, '<br>';// . : 字符串连接操作echo $e . $f, '<br>';echo '<hr>';// 强制转换// 如果不想看到警告,通过强制转换解决// echo (int)$e + 10, '<br>';// 强制转换建议用intval,不建议使用intecho intval($e) + 20, '<br>';echo strval($f) . ' hello'.'<br>';echo gettype($f);echo '<hr>';// 永久转换settype($f,'string');echo gettype($f);
运行结果截图
1.echo 回显,效率最高,没有返回值2.var_dump()想获取到变量的完整的信息3.变量是临时存储数据的容器,变量是临时存储数据的容器4.变量区分大小写,函数是不区分大小写5.变量命名:变量标识符: $开始,仅允许字母,下划线和数字,且不允许使用数字开始6.变量的有值传递与引用传递二种方式赋值7.变量的检测与删除方法: unset()删除变量,isset()是空才为true,empty()判断是否为空8.变量的类型转换:. : 字符串连接操作;强制转换建议用intval,不建议使用int;永久转换 settype($f,'string');
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号