1,for循环遍历关联数组,
$chenjidan = ['xuehao' => '9号','xingming' => '张三','chengji' => '100分'];
//将数组的指针复位,
reset($chenjidan);
//循环3条件,1,循环变量初始化,2,循环条件判断,3循环变量的改变。
for($i = 0; $i < count($chenjidan); $i++){
$k = key($chenjidan); //用一个变量接收下标值,
$v = current($chenjidan);//用一个变量接收元素值。
echo "$k => $v,<br>";
next($chenjidan);//
}
实例运行:
2,white循环关联数组:
//将数组的指针复位,
reset($chenjidan);
$i = 0;
while ($i < count($chenjidan)) {
$k = key($chenjidan); //用一个变量接收下标值,
$v = current($chenjidan);//用一个变量接收元素值。
echo "$k => $v,<br>";
// echo key($chenjidan) . '=>' . current($chenjidan) . '<br>'; //不通过变量,直接输出。
next($chenjidan);//
$i++;
}
?>
运行实例:
3,数组指针
下标 | 0 | 1 | 2 | 3 |
---|---|---|---|---|
值 | 9号 | 张三 | 语文 | 98分 |
下面的函数可以针对数组进行相应的操作:
current() //取得数组当前指针所在单元的值;
key() //取得数组当前指针所在单元的下标;
reset() //将数组指针移到最前面的位置,并取得新位置上的值;
next() //将数组指针移到下一个位置,并取得新位置上的值;
prev() //将数组指针移到上一个位置,并取得新位置上的值;
end() //将数组指针移到最后面的位置,并取得新位置上的值;
4,登陆表单:
HTML代码:
<div class="zc">
<h3>用户注册</h3>
<form action="xuexi2.php" method="post" class="zc1">
<span>
<label for="yonghuming">用户名:</label>
<input type="text" name="yonghuming" id="yonghuming" placeholder="用户名为数字和英文字母">
</span>
<span>
<label for="mima">密码:</label>
<input type="text" name="mima" id="mima" placeholder="请输入密码">
</span>
<span>
<label for="chongfumima">重复密码:</label>
<input type="text" name="chongfumima" id="chongfumima" placeholder="重复输入密码">
</span>
<span class="zc1a">
<label for="male">性别:</label>
<span class="zc2">
<input type="radio" name="gender" id="male" value="male" required><label for="male">男</label>
<input type="radio" name="gender" id="female" value="female" required><label for="female">女</label>
</span>
</span>
<span>
<label for="lianxiren">联系人:</label>
<input type="text" name="lianxiren" id="lianxiren" placeholder="请输入正确的姓名">
</span>
<span>
<label for="tel">电话号码:</label>
<input type="text" name="tel" id="tel" placeholder="请输入正确的电话号码">
</span>
<button>提交</button>
</form>
</div>
运行实例:
PHP后台验证代码:
<?php
//读取表单所有提交的值
echo '<pre>' . print_r($_POST, true) . '</pre>>';
//读取表单提交的单一项值
echo '用户名:' . $_POST['yonghuming'] . '<br>';
//判断请求类型
echo '请求类型:' . $_SERVER['REQUEST_METHOD'] . '<br>';
//判断请求的值是否和提交的值一样:
if($_SERVER['REQUEST_METHOD'] === 'POST'){
//empty():空字符串,0.null,false,
//判断值是否为空,并用一个变量取出相应提交的值:
if(!empty($_POST['yonghuming'])) $yonghuming = $_POST['yonghuming'];
if(!empty($_POST['mima'])) $mima = $_POST['mima'];
if(!empty($_POST['chongfumima'])) $chongfumima = $_POST['chongfumima'];
if(!empty($_POST['gender'])) $gender = $_POST['gender'];
if(!empty($_POST['lianxiren'])) $lianxiren = $_POST['lianxiren'];
if(!empty($_POST['tel'])) $tel = $_POST['tel'];
if ($mima === $chongfumima) {
// md5():32位随机字符串, sha1():40位随机字符串
$mima = md5(sha1($chongfumima));
} else {
exit('<script>alert("二次密码不一致");history.back();</script>');
}
//将上面变量组装成数组(compact)
$zhuce = compact('yonghuming','mima','gender','lianxiren','tel');
echo '<pre>' . print_r($zhuce, true) . '</pre>>';
}
else{
echo ('<b style="color: red">类型错误</b>');
运行实例:
手写代码:
总结:
1,一步慢,步步慢,等抓紧时间追赶上进度。
2,对遍历数组要多熟悉
3,对函数要多熟悉,争取牢记于心。