reset() 函数将内部指针指向数组中的第一个元素,并输出。
current() - 返回数组中的当前元素的值
end() - 将内部指针指向数组中的最后一个元素,并输出
next() - 将内部指针指向数组中的下一个元素,并输出
prev() - 将内部指针指向数组中的上一个元素,并输出
each() - 返回当前元素的键名和键值,并将内部指针向前移动
list() - 用于在一次操作中给一组变量赋值
实例:
function set_file($varname, $filename = "") {
if (!is_array($varname)) { // 如果不是数组
if ($this->debug & 4) {
echo "<p><b>set_file:</b> (with scalar) varname = $varname, filename = $filename</p>\n";
}
if ($filename == "") { // 如果是空路径终止程序并输出报错信息
$this->halt("set_file: For varname $varname filename is empty.");
return false;
}
//使用成员方法filename()修改filename并赋值给成员属性file[]
$this->file[$varname] = $this->filename($filename);
} else { //如果是数组
reset($varname); //数组指针重置到首元素
while (list($v, $f) = each($varname)) {
if ($this->debug & 4) {
echo "<p><b>set_file:</b> (with array) varname = $v, filename = $f</p>\n";
}
if ($f == "") {
$this->halt("set_file: For varname $v filename is empty.");
return false;
}
$this->file[$v] = $this->filename($f);
}
}
return true;
}