最土的核心类文件:Utility.class.php php功能模块常有的就那么多,但是如何实现就是五花八门。只要你把握住万变不离其宗,编程技术再强也的操作数据库,用SUDA等查更新删除和修改。所以这里面函数或者对象的作用就是围绕这些功能展开的。今天我来分析一下这个文件看看是否有收获。
定义类的方法:
class Utility
{}就是用关键字class空格加上类名称。
类这个东西也很固定就是今天忙改天弄好!
const CHAR_MIX = 0;
const CHAR_NUM = 1;
const CHAR_WORD = 2;这个是声明了三个常量。
static public function Option($a=array(), $v=null, $all=null)
静态公有的方法option参数为数组
if ( $all ){
$selected = ($v) ? null : 'selected';
$option .= "<option value='' $selected>".strip_tags($all)."</option>";
}
在参数$all存在的情况下
$selected的值为$v存在设为null否则用selected也就是说这个语句用来控制option选择中水被选中,而这个选中的选项是$all我们传递的值。
$v = explode(',', $v);
结合一个例子: Utility::Option(option_category('city'), $city_id, '全部城市');
将$v中按照","进行分割生成数组。那么$v代表的意思就是value的值
我们来看看一般的 <select name="select" id="select">
<option value="1" selected="selected" >test</option>
</select>
需要三个值:value 是否selected(默认) 和文本<option>text</option>
$a=array(), $v=null, $all=null这三个量也就对应上面的量all是默认值(selected),$a代表option里的选项那么$v自然就是value
settype($v, 'array');
foreach( $a AS $key=>$value )
{
if (is_array($value)) {
$key = strval($value['id']);
$value = strval($value['name']);
}
$selected = in_array($key, $v) ? 'selected' : null;
$option .= "<option value='{$key}' {$selected}>".strip_tags($value)."</option>";
}这循环的作用就是将$a遍历如果is_array表示是否是数组。如果是将取出这里面的值。付给$key跟$value.