Correction status:qualified
Teacher's comments:
三种作用域:
全局, 在函数之外创建的变量,可在函数外部直接使用
局部,函数内部创建的变量,仅限在函数内部使用
静态,函数内部创建,仅在内部使用并且函数执行后他的值不消失
<?php /** * Created by PhpStorm. * User: mac * Date: 18/8/24 * Time: 下午1:17 */ //2. 编程: 变量的类型与检测 //3. 编程: 分支结构的实例 $age = 30;//interger $salary = 3560.88; // float $name = 'junge'; //string $isMarried = true;// Boolean //echo $name.'的年龄是:'.$age.'工资是:'.$salary.'是否已婚:'.$isMarried.'<hr>'; //echo $name,'的<span style="color: indianred;">年龄</span>是:',$age.'工资是:',$salary.'是否已婚:',$isMarried,'<hr>'; $book = ['php','mysql','html','css','javascript']; //Array echo '<pre>'; $student = new stdClass();// object $student->name = '均无敌'; $student->course = 'php'; $student->grade = '88'; //var_dump($student); //var_dump($student->name); //echo $student->name,'<br>'; $file = fopen('test.txt','r') or die('打开失败');//fopen打开文件 echo fread($file,filesize('test.txt')); //fread读取文件 //fclose($file);关闭一个打开文件 $price =null; echo '$price is'.$price; echo '<br>'; echo is_null($price)?'是null':'不是null'; //变量检测 //gettype() echo '<br>',gettype($file),'<hr>'; //resource //设置类型 $price = 124.99; settype($price,'string'); echo $price,'<hr>'; echo gettype($price); ?>
点击 "运行实例" 按钮查看在线实例
<?php //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 = 'jun'; var_dump(isset($b)); $c; //等价于 $c = null var_dump(isset($c));
点击 "运行实例" 按钮查看在线实例
<?php echo '<h3>变量作用域</h3>'; echo '<hr color="blue">'; $siteName = 'PHP中文网';//全局变量 //当用户定义一个全局变量的时候 这个变量同时也自动成为超全局变量数组$GLOBALS的一个元素 //$GLOBALS['siteName'] = 'php中文网'; //超全局变量不受作用域限制 //PHP中函数的声明使用关键字:function 函数名(参数列表,用逗号分开){多条语句} //创建一个函数,意味着创建出一个作用域,环境执行 //函数中的执行结果用return 返回给调用者 function hello() { // global $siteName; $useName = 'jun wudi'; //局部变量 // return $useName.'是'.$siteName.'的讲师'; return $useName.'是'.$GLOBALS['siteName'].'的讲师'; } echo '<h3>',hello(),'</h3>'; echo '<hr color="red">'; function myStatic() { static $num = 1; return '第'.$num.'次输出'.$num++.'<br>'; } echo myStatic(),'<br>'; echo myStatic(),'<br>'; echo myStatic(),'<br>'; echo myStatic(),'<br>'; echo myStatic(),'<br>';
点击 "运行实例" 按钮查看在线实例
<?php /** 常量:只读变量,不可更新,不可删除,没有作用域限制,直接在函数中使用而不用声明 * 通常常量全部采用大写字母,并且不能以$开头,多个单词建议中间用下划线链接 */ echo '<h3>常量声明,赋值,输出</h3>'; echo '<hr color="green">'; //创建 define('SITE_NAME','JUNWUDI的博客'); //define()函数 const COUNTRY = "中国";//关键字const //访问 echo SITE_NAME,COUNTRY,'<BR>'; echo constant('SITE_NAME'),'<br>'; //检测 echo defined('SITE_NAME')?'已定义':'<span style="color:red">为定义</span>';
点击 "运行实例" 按钮查看在线实例
<?php /** 数组 */ echo '<h3>数组的创建访问与更新</h3>'; echo '<hr color="green">'; //创建 $city = ['合肥','上海','杭州','南京']; //索引数组 echo $city[0],'<br>'; echo $city[3],'<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);
点击 "运行实例" 按钮查看在线实例
<?php /*流程控制:条件判断与多分支 */ //单分支 $grade = 55; if ($grade < 60){ echo '<p style ="color: red;">很不幸,您得补考</p>'; } //双分支 $grade = 75; if ($grade < 60){ echo '<p style="color:red">很不幸,您得补考</p>'; }else{ echo '<p style="color:green">恭喜,及格了</p>'; } //多分支 $grade = 85; if ($grade <60){ echo '<p style="color: indianred">很不幸,您的补考</p>'; }else if ($grade >= 60&&$grade < 80){ echo '<p style="color: green">考得还不错</p>'; }else if ($grade >=80 && $grade <=100){ echo '<p style="color: green">你TM的,是个天才</p>'; } //4.三元判断:双分一个简写 $age = 30; echo ($age >= 18) ? '<script>alert("已成年,可以浏览但不可沉迷其中")</script>':'<p style="color: indianred">未成年,请自觉离开</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: echo '<p>你关心的语言未收录~~</p>'; }
点击 "运行实例" 按钮查看在线实例
<?php /*循环结构:for */ for ($i=0; $i<10; $i++){ // print($i.','); // print ($i); // if ($i<9){ // print (','); // } $i<9 ? print ($i.','): print ($i); }
点击 "运行实例" 按钮查看在线实例