phplib类中文详解
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-05-22
set_file(array $filelist) * comment: 设置多个模板文件 * filelist: (句柄,文件名)数组 * public: set_file(string $handle, string $filename) * comment: 设置一个模板文件 * handle: 文件的句柄 * filename: 模板文件名 */ function set_block($parent, $varname, $name = "") { if ($this->debug & 4) { echo "<p><b>set_block:</b> parent = $parent, varname = $varname, name = $name</p>\n"; } if (!$this->loadfile($parent)) { $this->halt("set_block: unable to load $parent."); return false; } if ($name == "") { $name = $varname;//如果没有指定模板变量的值就用子模板名作为模板变量名 } $str = $this->get_var($parent); $reg = "/[ \t]*<!--\s+BEGIN $varname\s+-->\s*?\n?(\s*.*?\n?)\s*<!--\s+END $varname\s+-->\s*?\n?/sm"; preg_match_all($reg, $str, $m); $str = preg_replace($reg, "{ " . "$name }", $str); $this->set_var($varname, $m[1][0]); $this->set_var($parent, $str); return true; } //该方法向Varname和varkeys数组中添加新的键一值对 /* public: set_var(array $values) * values: (变量名,值)数组 * public: set_var(string $varname, string $value) * varname: 将被定义的变量名 * value: 变量的值 */ function set_var($varname, $value = "", $append = false) { if (!is_array($varname))//如果不是阵列 { if (!empty($varname)) //如果是空的 { if ($this->debug & 1) { printf("<b>set_var:</b> (with scalar) <b>%s</b> = ''%s''<br>\n", $varname, htmlentities($value)); } $this->varkeys[$varname] = "/".$this->varname($varname)."/"; if ($append && isset($this->varvals[$varname])) { $this->varvals[$varname] .= $value; } else { $this->varvals[$varname] = $value; } } } else { reset($varname); while(list($k, $v) = each($varname)) { if (!empty($k)) { if ($this->debug & 1) { printf("<b>set_var:</b> (with array) <b>%s</b> = ''%s''<br>\n", $k, htmlentities($v)); } $this->varkeys[$k] = "/".$this->varname($k)."/"; if ($append && isset($this->varvals[$k])) { $this->varvals[$k] .= $v; } else { $this->varvals[$k] = $v; } } } } } //定义函数clear_var function clear_var($varname) { if (!is_array($varname))//如果varname不是阵列 { if (!empty($varname)) //如果是空的 { if ($this->debug & 1) { printf("<b>clear_var:</b> (with scalar) <b>%s</b><br>\n", $varname); } $this->set_var($varname, ""); } } else { reset($varname); while(list($k, $v) = each($varname)) { if (!empty($v)) { if ($this->debug & 1) { printf("<b>clear_var:</b> (with array) <b>%s</b><br>\n", $v); } $this->set_var($v, ""); } } } } /*这里是函数unset_var,删除变量的定义*/ function unset_var($varname) { if (!is_array($varname)) { if (!empty($varname)) { if ($this->debug & 1) { printf("<b>unset_var:</b> (with scalar) <b>%s</b><br>\n", $varname); } unset($th |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: PHP中的XML拉模式解析下一篇: PHP的数据库增删改查源代码(2)
关于phplib类中文详解的所有评论