Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:手写这么多, 为什么不谈点写后感呢?
//数据
$a='PHP中文网';
//代码
function get_we($b){
return $b . '欢迎你!';
}
echo get_we($a);
$name = '张三';
$age = 30;
$isMarried = true;
// echo : 回显, 无返回值
echo '姓名: ' . $name . '<br>';
echo '年龄: ' . $age . '<br>';
// 布尔值会发生类型转换, true =>1, false=>空
echo '是否已婚: ' . $isMarried . '<br>';
echo '<hr>';
//print: 打印, 与echo功能类似 , 但是会有返回值: 1
print('年龄' . $age . '<br>');
echo print('年龄' . $age . '<br>');
echo '<hr>';
// var_export($var, false|true): 输出/返回变量的字符串表示
// 其实就是定义该变量的php代码而已,例如,字符串会自动添上定界符引号
var_export($name);
echo '<hr>';
// var_dump($var1, $var2...): 打印一个或多个变量的结构,包括类型与值
var_dump($name, $age, $isMarried);
// 创建一个数组,从1到20,步长为2
$data = range(1,20,2);
// print_r($var, false|true): 以更容易理解的方式打印变量,r: readily易于理解
// 因为第二个参数true的存在, 使该函数只是返回了数据,而不是直接输出
// 所以,我们可以根据自己要求, 任意的格式化需要输出的数据,使之更好阅读
echo '<pre>'. print_r($data, true) . '</pre>';
echo '<hr>';
// 数组定义
// (一)索引数组
// 追加式定义
$user = [];
//直接定义, 索引默认从0开始
$user[] = 101;
$user[] = 'admin';
$user[] = 'admin@php.cn';
// 推荐方式
$user = [101, 'admin', 'admin@php.cn'];
// 访问: 单个或多个成员.简单变量中的echo ,print只能访问单个成员,不能输出数组
echo $user[2] . '<br>';
print_r($user);
echo '<pre>' . print_r($user, true) . '</pre>';
var_dump($user);
echo '<hr>';
// 遍历: for: 索引数组
$res = '';
for ($i = 0; $i < count($user); $i++) {
$res .= $user[$i] . ', ';
}
// 去掉最后的', ', 输出遍历结果
echo rtrim($res, ', ');
echo '<hr>';
//foreach
$res = '';
foreach ($user as $item) {
$res .= $item . ', ';
}
echo rtrim($res, ', ');
echo '<hr>';
// 索引数组与变量之间的转换
list($id, $name, $email) = $user;
echo $id . '--' . $name . '--' . $email . '<br>';
//索引数组转字符串:
$str = implode(',', $user);
echo $str, '<br>';
$sql = "INSERT `users` SET `comment` = {$str};";
echo '<hr>';
//将一个字符串再转换成数组
$arr = explode(',', $str);
print_r($arr);
echo '<br>';
echo '<hr>';
// (二) 关联数组
// 定义
$user = ['id'=>101, 'name'=>'admin', 'email'=>'admin@php.cn'];
// 访问
echo $user['email'] . '<br>';
print_r($user);
var_dump($user);
var_export($user);
echo '<hr>';
// 遍历
// foreach:
foreach ($user as $key=>$value) {
echo '[' . $key . '] => ' . $value . '<br>';
}
// for: 借助数组指针, 可以完成遍历
$res = '';
for ($i = 0; $i < count($user); $i++) {
// 获取当前指针处的数组成员
$res .= current($user) . ', ';
// 指针前移到下一个数组成员的位置上
next($user);
}
echo rtrim($res, ', ');
echo '<hr>';
// 转换
// 关联数组与变量之间的转换 关联数组可以直接使用字符串键名做变量名
extract($user);
echo 'id = ' . $id . ', name = ' . $name . ', email = ' . $email . '<br>';
// 独立变量再组装成关联数组: compact()
$dsn = 'mysql:host=localhost;dbname=demo';
$username = 'root';
$password = 'root';
$linkParams = compact('dsn', 'username', 'password');
print_r($linkParams);
echo '<br>';
// 关联数组转索引数组,
print_r(array_values($user));