批改状态:合格
老师批语:
<?php
echo '<h3>变量的类型与转换</h3>';
// 标量: 单值变量, 数值(整数,浮点),字符串,布尔(true/false),基本数据类型
// 复合类型: 多值变量,数组 Array, 对象Object
// 特殊类型: 资源,null
$age = 30; // Integer
$salary = 3560.88; // Float
$name = 'peter zhu'; // String
$isMarried = true; // Boolean
//echo $name . '的年龄是: '.$age. ',工资是: '.$salary. ',是否已婚: '. $isMarried. '<br>';
//echo $name,'的<span style="color:red">年龄</span>是: ',$age, ',工资是: ',$salary, ',是否已婚: ', $isMarried. '<hr>';
$books = ['php','mysql','html','css','javascript']; //Array
echo '<pre>';
//print_r($books);
$student = new stdClass(); // Object
$student->name = '罗盼';
$student->course = 'php';
$student->grade = 80;
//var_dump($student);
//var_dump($student->name);
//echo $student->name,'<br>';
//echo '<h3 style="color: blue">',print_r($student->name,true),'</h3>';
// 资源类型
$file = fopen('test.txt','r') or die('打开失败');
echo fread($file, filesize('test.txt'));
//fclose($file);
echo '<hr>';
//null
$price = null;
echo '$price is ' . $price;
echo '<br>';
echo is_null($price) ? '是NULL' : '不是NULL';
//变量检测
// gettype()
echo gettype($file), '<hr>'; //resource
// 设置类型
$price = 124.99;
settype($price, 'integer');
echo $price, '<hr>';
echo gettype($price);
/**
* is_null(), empty(), isset()
*/
// is_null()
$val1; // 声明但未赋值
$val2 = null; // 声明并初始化
$val3 = 'php';
unset($val3);
@var_dump(is_null($val1) ? true : false);
@var_dump(is_null($val2) ? true : false);
@var_dump(is_null($val3) ? true : false);
// empty()
// 空字符串, 空数组, null, 0 / '0' / false 返回 true
$str1 = '';
$str2 = []; // 空数组
$str3 = 0;
$str4 = '0';
echo '<hr>';
@var_dump(empty($str1) ? true : false);
@var_dump(empty($str2) ? true : false);
@var_dump(empty($str3) ? true : false);
@var_dump(empty($str4) ? true : false);
//isset():检测一个变量是否存在? 是 null 反操作
// 变量已经存在,并且它的值不是null,返回true
echo "<hr>";
$a = null;
var_dump(isset($a));
$b = 'zhu';
var_dump(isset($b));
$c; // 等价于 $c = null
var_dump(isset($c));
/**
*常量:只读变量,不可更新,不可删除,没有作用域限制,直接在函数中使用而不声明
* 通常常量全部采用大写字母,并且不能以$开头,多个单词建议中间用下划线连接
*/
echo '<h3>常量声明,赋值,输出</h3>';
echo '<hr color="green">';
//创建
define('SITE_NAME','Peter Zhu的博客'); // define()函数
const COUNTRY = '中国'; // 关键字const
//访问
echo SITE_NAME, COUNTRY, '<br>';
echo constant('SITE_NAME'),'<br>';
//echo '<pre>',print_r(get_defined_constants(),true),'</pre>';
//检测
echo defined('SITE_NAME1') ? '已定义' : '<span style="color:red">未定义</span>';
echo '<hr>';
/**
* 数组的知识
*/
echo '<h3>数组的创建访问与更新</h3>';
echo '<hr color="green">';
//创建
$city = ['合肥','上海','杭州','南京']; //索引数组
echo $city[0], '<br>';
echo $city[2], '<br>';
// 键值对
$user = ['id'=>10,'name'=>'猪哥','course'=>'php','grade'=>89]; //关联数组
echo $user['name'],'<br>';
echo $user['grade'],'<br>';
//更新
$user['name'] = '朱老师';
echo $user['name'],'<br>';
//删除
//unset($user['grade']);
unset($user);
echo '<pre>',print_r($user,true);
echo '<hr>';
/**
* 流程控制: 条件判断与多分支
*/
//1.单分支
$grade = 55;
if ($grade < 60) {
echo '<p style="color:red">很不幸,您得补考</p>';
}
//2.双分支
$grade = 75;
if ($grade < 60) {
echo '<p style="color:red">很不幸,您得补考</p>';
} else { // $grade >= 60
echo '<p style="color:green">恭喜,及格了</p>';
}
//3.多分支
$grade = 85;
if ($grade < 60) {
echo '<p style="color:red">很不幸,您得补考</p>';
} else if ($grade >= 60 && $grade < 80) { // $grade >= 60
echo '<p style="color:green">考得还不错</p>';
} else if ($grade >= 80 && $grade <= 100) { // $grade >= 60
echo '<p style="color:green">真TM的是个天才</p>';
}
//4.三元判断:双分一个简写
$age = 16;
echo ($age >= 18) ? '<script>alert("已成年,可以浏览但不可沉迷其中")</script>' : '<p style="color:red">未成年自觉离开</p>';
//5 switch
$program = 'Java';
switch (strtolower($program)) {
case 'php':
echo '<p>php是全世界最好的编程语言~~</p>';
break;
case 'java':
echo '<p>通用的编程语言~~</p>';
break;
case 'html':
echo '<p>超文本标记语言~~</p>';
break;
default: // 相当于 else
echo '<p>你关心的语言未收录~~</p>';
echo '<hr>';
/**
* 循环结构: for
* for (初始条件; 结束条件; 更新条件) { 循环体 }
*/
for ($i=0; $i<10; $i++) {
// print($i.',');
// print($i);
// if ($i < 9) {
// print(',');
// }
($i<9) ? print($i.',') : print($i);
break;
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号