Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:这个作业 , 太适合在校大学生写了, 是不是呀, 不仅要写, 还要记住,理解哟
<?php //数据放到内存中的数据段 $data = "php.cn"; //代码放到内存中的代码段 function function_name($name){ return $name ."欢迎您"; } echo function_name($data); //变量名是那么,变量值类型是字符串 $name ='jzsmile'; $age=20; $isMarried=true; //echo 回显 无返回值 echo '年龄'.$age.'<br>'; //布尔值会发生类型转化 true->1 false -> 空 不是null echo '是否未婚:'.$isMarried.'<br>'; //字符串 echo '姓名:'.$name.'<br>'; //字符串虽然是单值,但却可以象数组一样访问 echo '我的姓是:'.$name{0}.'<br>'; //print:打印 与echo类似但是有返回值 1 print('年龄'.$age.'<br>'); echo print('年龄'.$age.'<br>'); //print_r($var,false|true): 以更容易理解的方式打印变量,r:readily 易于理解 //如果仅仅打印一个变量 看上去似乎和之前没有区别 print_r($name); echo '<br>'; //如果添加了第二个参数true 则返回信息return 而不是输出echo echo print_r($name,true); //这样做 ,对于简单单值意义不大 但对于复合数据意义非凡 $data = range(1,20)//因为第二个参数的存在使该函数只是返回数据没有输出 echo '<pre>'.print_r($data,true).'</pre>'; //var_export($var,false|true):输出|返回变量的字符串表示 //其实就是定义该变量的php代码而已 例如 字符串会自动加上定界符 var_export($name); echo '<br>'; //var_dump($var1,$var2...):打印一个或多个变量结构包括类型与值 var_dump($name,$age,$isMarried); //demo3 //数组的定义 //(一)索引数组 //1.定义 //如果有$user=[]; 就是追加式定义 //直接定义 ,索引默认从0开始 也可自定义 ,并不要求连续 $user[] = 101; $user[] = 'admin'; $user[] = 'admin@php.cn'; //推荐方式 $user = [101,'admin','admin@php.cn']; //2.访问:单个或多个成员 //简单变量中的echo print 只能访问单个成员 不能输出数组 //单个数组成员 echo $user[2].'<br>';//email print_r($user); echo '<pre>'.print_r($user,true).'<pre>'; var_dump($user); echo '<hr>'; //3. 遍历:可循环 访问全部成员 //3.1 for :索引数组最常用的是for循环 $res=''; for ($i = 0;$i<count($user);$i++){ $res.=$user[$i].','; } //去掉最后 ',',输出便利结果 echo rtrim($res,','); echo '<hr>'; //3.2 foreach $res = ''; foreach ($user as $item){ $res.=$item.','; } echo rtrim($res,','); echo '<hr>'; //4 转换 //4.1 索引数组与变量之间的转换,mvc 中模板赋值会用到 list($id,$name,$email) = $user; echo $id.'--'.$name.'--'.$email.'<br>'; //4.2 索引数组 转字符串 :见数组扁平化存贮会用到 例如将数组存储到数据表的字段中 $str = implode(',',$user); echo $str,'<br>'; $sql ="INSERT `users` SET `comment` = {$str};"; //附加知识 将一个字符串 (例如从数据表中读到的) 再转化为数组 $arr = explode(',',$str); print_r($arr); echo '<br>'; //注意索引数组不推荐使用while循环 如果一定这麽做 也可以写但是each() 有可能在以后版本删除 可能看到不推荐使用的警告信息 while (list($key,$value) = each($user)){ echo '['.$key.']=>'.$value.'<br>'; } //---------------------------------------------------------------------------- //(二)关联数组 //1. 定义 $user = ['id'=>101,'name'=>'admin','email'=>'admin@php.cn']; //2.访问 echo $user['email'].'<br>'; print($user); var_dump($user); var_export($user); echo '<hr>'; //3.遍历 //3.1 foreach 推荐 foreach ($user as $key=>$value){ echo'['.$key.']=>'.$value.'<br>'; } //3.2 for 并不适合用来遍历关联数组 但可以借助数组指针 来完成遍历 $res= ''; for($i = 0;$i<count($user);$i++){ $res.=current($user).','; next($user); } echo rtrim($res,','); echo '<hr>'; //4. 转换 //4.1 关联数组 与变量之间的转换 (与索引数组略有区别) //索引数组需要list()提供变量名 但关联数组直接用键值作为变量名就可以 extract($user); //变量组装为关联数组 $dsn = 'mysql:host=localhost;dbname=demo'; $username = 'root'; $password = 'root'; $linkParams = compact('dsn','username','password'); print_r($linkParams); echo '<br>'; //4.2 关联数组转化为索引数组 print_r(array_values($user));
点击 "运行实例" 按钮查看在线实例