新网Logo
首页>建站推广>

写给PM及UI的PHP教程丨文章管理系统修改文章(遍历数组)

登录 注册

写给PM及UI的PHP教程丨文章管理系统修改文章(遍历数组)

摘要:【文章摘要】本节课程讲利用上一节的创建好的二维数组,通过foreach语句循环遍历该数组来实现选择栏目的部分。并学习如何让已发布文章的所属栏目处于被选定状态。

给产品经理及UI的PHP教程丨文章管理系统-修改文章(遍历数组)

我们先用已学到的知识来实现修改文章的功能。

打开article_edit.php代码改成如下:

http://www.chanpin100.com/archives/19124

打开article.php页面在include(‘article_edit.php’);下方增加如下代码:

http://www.chanpin100.com/archives/19124

代码分析:

基本上把创建文章和修改栏目两个功能结合了一下而已。

区别是在选择栏目那的while语句里面加了一个if条件语句。目的是输出如下格式的代码:

http://www.chanpin100.com/archives/19124

目的是为了让文章的所属栏目默认被选中。在option中selected=”selected”代表着被选定状态。

通过UPDATE指令修改文章的时候这里去掉了add_time属性,因为add_time是创建时间,当文章创建成功之后这个时间不应该变。

并且通过非常短的PHP代码,把标题,正文等的值输出到了对应的HTML元素中。比通过echo语句输出整段HTML来的阅读起来方便很多。

修改文章的功能做好了!哈哈!

这就结束了?当然不是!我单独写一篇文章肯定不能只是为了讲这点东西。

在上一节课程中我们创建了一个二维数组,把栏目数据保存在了$cat_array里。那在这里我们是否可以利用一下这个变量来实现选择栏目的部分呢?

答案是肯定的!有些同学可能想到了是否可以用while语句来输出循环呢?这是不可能的!(key是自增数字的情况下可以用while来实现,但key是自定义字符的时候就没法弄)

php专门为了关联数组提供了一种方法,那就是foreach。

foreach循环:

foreach循环只适用于数组,可以说是专门用来输出数组用的循环语句。

看个例子吧:

:文章管理系统【7】- 修改文章(遍历数组)

每进行一次循环迭代,当前数组($colors)元素的值就会被赋值给 $value 变量,并且数组指针会逐一地移动,直到到达最后一个数组元素。$value可以随便起名。

我们来把我们的栏目数据用这种格式输出试试吧。

首先把article_list.php页面中的如下代码剪切到article.php中的if条件语句上方:

:文章管理系统【7】- 修改文章(遍历数组)

这样我们就可以在article系列各个页面中调用$cat_array了。

打开article_add.php页面,把通过while循环输出的栏目部分改成用foreach输出,代码如下:

:文章管理系统【7】- 修改文章(遍历数组)

因为$cat_array是一个二维数组,所以他的每一个元素是一个数组。当把每一个元素赋值到了变量$value的时候,$value自然而然的就变成了一个数组。再通过$value[key]的形式输出了数组$value中对应的元素值。

这节课程讲完了!

留个作业:

1. 把foreach循环应用到category_edit.php页面完成修改文章功能,并结合if语句实现所属栏目被选定状态。

2. 通过已学到的知识完成删除文章的功能。