批改状态:合格
老师批语:以现在正在进行的课堂作业为主
<?php//demo1.php//求和函数function sum(int $a, int $b) : string{return "$a + $b = " .($a + $b) ;}//echo打印输出echo sum(30 , 50);echo '<hr>';//demo2.php//建立变量$email = 'chengdongxu@php.cn';//用echo打印变量输出,echo没有返回值echo $email , '<br>';//用print打印变量输出,print有返回值,为true或者1print $email . '<br>';//用var_export()打印输出,此打印方式可以输入该变量的类型和字符串的数量var_dump($email);echo '<hr>';//demo3.php//先建立2个英文单词一样但是区分大小写的变量名$username = 'chengdongxu';$userName = 'mafei';//打印输出2个区分大小写的变量名echo $username . '同事是' . $userName;//没有使用$开始的变量名是错误的,例如//hello = 'php';//变量名不允许用数字开头,例如//$111hello = 'php';//变量名中不允许使用特殊字符,例如//$email&& = 'admin@php.cn'//变量名尽可能寓意话,方便理解,有些变量名虽然正确但无意义,例如$aaa = 888;$_ = 360;$_123 = 850;echo '<hr>';//demo4.php//建立变量$var = 120;//打印变量var_dump($var);//再次建立一个变量名相同的变量$var = 'hello';//再次打印该变量,打印结果发生变化,以第二次建立的为准,说明变量的值发生了传递var_dump($var);echo '<hr>';//demo5.php//建立变量$name1 = 'chengdongxu';//建立第二个变量让等于第一个变量$name2 = $name1;//打印这2个变量,其实就是一个值echo $name1 . '其实就是' . $name2 , '<br>';//更新第一个变量名$name1 = 'laocheng';//再次打印这2个变量,$name1值被传递为新的值,但是$name2的值并没有发生变化,还是保持第一个$name1的值echo $name1 . '其实就是' . $name2 , '<br>';//$name2的值引用$name1$name2 = &$name1;//再次打印这2个变量,这个时候2个变量的值都被传递echo $name1 . '其实就是' . $name2 , '<br>';echo '<br>';//demo6.php//先创建二个变量$phone = 'number';$number = 18291893223;//当第二个变量名刚好等于第一个变量的值时,可以使用可变变量//打印可变变量,输出的是$number的值echo $$phone;echo '<br>';//demo7.php//这里是检测变量是否存在,如果存在就输入变量值,如果不在就不输出,当下由于没有建立变量,所以不会输出if (isset($name3)) echo $name3, '<br>';//建立一个变量$name3 = 'hanwei';//此时再次检测变量的时候已经会输出了if (isset($name3)) echo $name3, '<br>';//再销毁这个变量unset($name3);//再次检测这个变量是否存在,如果不存在,让输出"变量不存在",实际输出的是"变量不存在"if (isset($name3)){echo $name3, '<br>';}else{echo '变量不存在';}//建立一个变量值为null$name4 = null;//打印返回的是布尔值truevar_dump(is_null($name4));if (is_null($name4)){echo '变量值为null';}else{echo $name4;}//建立一个值为空的变量$name5 = '';//打印返回的是布尔值是0var_dump($name5);//用函数empty检测,返回的是布尔值truevar_dump(empty($name5));if (empty($name5)){echo '$name5的值为空';}else{echo $name5;}echo '<hr>';//demo8.php//字符串类型,例如$name6 = 'xiaohang';//数值类型,有整数int和小数float,例如$price = 100;//布尔值类型,有true和false,例如$name7 = true;$name8 = false;//复合类型中的对象类型$obj = new stdClass;//添加对象中的属性$obj->email = 'admin@php.cn';//打印输出对象echo $obj->email . '<br>';//数组类型$phone = [5000, 'red', '5G'];//格式化人性打印数组echo '<pre>' . print_r($phone, true). '</pre>';//特殊类型$num = null;//打印特殊类型,返回值是nullvar_dump($num);//资源类型,打开一个文件,'r'是用只读的方式打开$f = fopen('demo0.php', 'r');//打印输出资源类型var_dump($f);//查看$f的类型echo gettype($f), '<hr>';//验证资源类型if (gettype($f) === 'resource'){echo '我是资源类型';}else{echo '我不是资源类型';}

1、打印输出的方式有3种
| 序号 | 指令/函数 | 描述 |
|---|---|---|
| 1 | echo | 只能打印字符串,没有返回值 |
| 2 | 可以打印数组,有返回值,返回值是true或false ,支持pre格式化打印 | |
| 3 | var_dump | 打印输出包含变量的类型和变量的字符数量,不支持pre格式化打印,没有返回值 |
2、变量值的传递和引用的区别是被传递或引用的变量值前面是否有&
3、可变变量使用的前提是被引用的变量的值必须跟引用者的变量名保持一致
4、数据的类型分为以下3种
| 序号 | 类型 | 描述 |
|---|---|---|
| 1 | 基本类型 | 包括字符串、数值、布尔值 |
| 2 | 复合类型 | 包括对象、数组 |
| 3 | 特殊类型 | 包括null、资源类型 |
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号