一、数据段与代码段
<?php //数据段 $site = 'php.cn'; //代码段 function get_site($webSite){ return $webSite . '欢迎您'; } //执行 echo get_site($site); echo'<br>';
运行实例 »
点击 "运行实例" 按钮查看在线实例
二、单值读取
<?php $name = 'Mr Gao'; $age = 25; $sex = true; //男true 女false ###单值读取### ##echo:回显 无返回值 echo '年龄:' . $age . '<br>'; //布尔值会发生转换, true=>1 false=>Nell echo '性别:' . $sex . '<br>'; //字符串 echo '姓名:' . $name . '<br>'; //字符串虽然是单值,但却可以向数组一样访问 echo '姓名:' . $name{0} . '<hr>'; ##print:打印 与echo功能类似 但有返回值:1 print('姓名:' . $name . '<br>' ); echo print('姓名:' . $name . '<br>' ); echo '<hr>'; ##print_r($bar , false|true):以更容易理解的方式打印变量,r:readily 易于理解 //如果只打印一个变量 和之前没有区别 print_r($name); echo '<br>'; //但添加第二个参数true 则是返回信息return 而不是输出echo echo print_r($name , true); echo '<br>'; //这样做 对单值变量意义不大 但对复合数据意义非凡 $date = range(1 , 15 , 3);//range()根据范围创建数组,包含指定的元素 echo '<pre>' . print_r($date , true) . '</pre>'; echo '<hr>'; //因为第二个参数true的存在 是该函数返回了数据 而不是直接输出 //所以我们可以根据自己的要求 任意的格式化需要输出的数据 使之更好阅读 ##var_export($var , false|true): 输出/返回变量的字符串表示 //其实就是定义该变量的PHP代码而已 例:字符串会自动添加上定界符引号 var_export($name); echo '<hr>'; ##var_dump($var1 , $var2...):打印一个或多个变量的结构 包括类型与值 var_dump($name , $age , $sex);
运行实例 »
点击 "运行实例" 按钮查看在线实例
三、索引数组
<?php ###数组定义### ##(一)索引数组 //1.定义 //如果有$user = [];就是追加式定义 //直接定义 索引默认重0开始 也可自定义 并不要求连续 $user[] = 66; $user[] = 'admin'; $user[] = 'admin@php.cn'; //推荐方式 $user = [66 , 'admin' , 'admin@php.cn']; //2.访问 :单个或多个成员 //简单变量中的echo , print 只能访问单个成员 , 不能输出数组 //例: 单个数组成员 echo $user[2] . '<hr>'; print_r($user);//为了结构清晰 如下 echo '<pre>' . print_r($user , true) . '</pre>' . '<hr>'; var_dump($user); echo '<hr>'; //3.遍历: 可循环访问全部成员 //3.1 for: 索引数组 最常用的for循环 $res = ''; //count — 计算数组中的单元数目,或对象中的属性个数 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;//list — 把数组中的值赋给一组变量 echo $id . ' --- ' . $name . ' --- ' . $email . '<hr>'; //4.2 索引数组转字符串: 将数组扁平化存储会用到 例:将数组存储到数据表的字段中 $str = implode(',' , $user);//implode — 将一个一维数组的值转化为字符串 echo $str , '<hr>'; $sql = "INSERT `users` SET `comment` = {$str}"; //4.3将一个字符串(例如从数据表中读到的) 再转换成数组 $arr = explode(',' , $str);//explode — 使用一个字符串分割另一个字符串 print_r($arr); echo '<hr>';
运行实例 »
点击 "运行实例" 按钮查看在线实例
四、关联数组
实例
<?php //(二)关联数组 //1.定义 $user = ['id' => 66, 'name' => 'admin', 'email' => 'email@php.cn']; //2.访问 echo $user['name'] . '<br>'; //返回单值 print_r($user) ; echo '<br>'; var_dump($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()提供变量名 关联数组可以直接使用字符串键名(key)做变量名 //同样非常适合在模板变量的创建与赋值上 extract($user);//extract — 从数组中将变量导入到当前的符号表 echo 'id=' . $id . ' --- name = ' . $name . ' --- email = ' . $email . '<br>'; //既然可以数组拆分成独立变量 就可以将独立变量再组装成关联数组:compact() $dsn = 'mysql:host = localhost; dbname = demo'; $username = 'root'; $password = 'root'; //compact — 建立一个数组,包括变量名和它们的值 $linkParams = compact('dsn', 'username', 'password'); echo '<br>'; //4.2 关联数组转索引数组 //array_values()返回数组中所有的值并给其建立数字索引 print_r(array_values($user)); echo '<br>'; //4.3 关联数组转字符串 与索引数组方式一样的 主要用于存储和格式化输出 //涉及函数 implode()拆分 explode()组装 $str = implode(',', $user); echo $str . '<br>'; $arr = explode(',', $str); print_r($arr);
运行实例 »
点击 "运行实例" 按钮查看在线实例
手抄:
总结:
也就是朱老师说的学习方法:
1.任何一种技术都是解决了一个问题
2.解决问题是分步骤的 并且是有限的 可实现的
3.对结果是可以进行测试的 有些要预测
4.代码的可读性第一
5.要有填空思维