今天学习了变量的进阶知识和实战的内容。
变量作用域
三种作用域: 全局, 在函数之外创建的变量,可在函数外部直接使用
局部,函数内部创建的变量,仅限在函数内部使用
静态,函数内部创建,仅在内部使用并且函数执行后他的值不消失
当用户定义一个全局变量的时候,这个变量同时也自动成为超全局变量数组
变量的类型与检测
代码:
实例
<?php echo '<h2>变量的类型与检测</h2>'; $age=18;//Integer $fnum=78.50;//Float $name='Tom';//String $isMarried=false;//Boolean echo $name,'的年龄是',$age,'成绩是',$fnum,'是否结婚',$isMarried; echo '<hr>'; $fruits=['apple','orange','Banana']; //Array echo '<pre>'; print_r($fruits); echo '</pre>'; echo '<hr>'; $student=new stdClass(); //Object $student->name='jim'; $student->course='html'; $student->grade=90; var_dump($student); var_dump($student->name); echo $student->name,'<br>'; echo '<h3 color="red">',print_r($student->name,true),'</h3>'; //资源类型 $file=fopen('text.txt','r')or die('打开失败'); echo fread($file,filesize('text.txt')); //null $price=null; echo '$price is',$price; echo '<br>'; echo is_null($price)?'是NULL':'不是NULL'; //变量检测 //gettype() echo gettype($file),'<br>'; //resource //设置类型 $price=123.44; settype($price,'integer'); echo $price,'<br>'; echo gettype($price); echo '<hr>'; //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); echo '<hr>'; //empty() //空字符串,空数组,null,0,/'0'/ false 返回 true $str1=''; $str2=[];//空数组 $str3=0; $str4='0'; $str5=null; 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); @var_dump(empty($str5)?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));
运行实例 »
点击 "运行实例" 按钮查看在线实例
分支结构的实例
代码
实例
<?php $grade=45; if($grade<60){ echo '<p style="color:red">很不幸,您得补考</p>'; } $grade=65; if($grade<60){ echo '<p style="color:red">很不幸,您得补考</p>'; }else{ echo '<p style="color:green">恭喜,及格了</p>'; } $grade=75; if($grade<60){ echo '<p style="color:red">很不幸,您得补考</p>'; }else if($grade>=60&&$grade<80){ echo '<p style="color:green">考的不错</p>'; }else if($grade>=60&&$grade<=100){ echo '<p style="color:green">真TM的是个天才</p>'; } $age=15; echo ($age>18)? '<script>alert("已成年,可以浏览但不可沉迷其中")</script>':'<p style="color:red">未成年自觉离开</p>'; echo '<hr>'; $day=5; switch ($day){ case '1': echo '星期一'; break; case '2': echo '星期二'; break; case '3': echo '星期三'; break; case '4': echo '星期四'; break; case '5': echo '星期五'; break; case '6': echo '星期六'; break; default: echo '星期天'; break; } for($i=0;$i<100;$i++){ echo $i,'<br>'; }
运行实例 »
点击 "运行实例" 按钮查看在线实例