选择语言 :

 Module_OOP_ORM_Data::_renew_orm_config

构造对象时清除字段

销毁变量以便可以统一采用__get()方法获取

null Module_OOP_ORM_Data::_renew_orm_config( )
File: ./modules/oop/orm/data.class.php
protected function _renew_orm_config()
{
    $class_name = $this->_class_name;
    # 获取当前对象所有变量
    $class_vars = get_class_vars($class_name);

    if ( !isset(OOP_ORM_Data::$_offset_setting[$class_name]) )
    {
        OOP_ORM_Data::$_offset_setting[$class_name] = array();
        OOP_ORM_Data::$_field_to_offset[$class_name] = array();
        $need_check_config = true;
    }
    else
    {
        $need_check_config = false;
    }

    # 清理key
    foreach ( $class_vars as $k => $v )
    {
        $kstr = strtolower($k[0]);
        if ( $kstr >= 'a' && $kstr <= 'z' )
        {
            if ( $need_check_config )
            {
                OOP_ORM_Data::$_offset_setting[$class_name][$k] = $v;
            }
            unset($this->$k);
        }
    }

    # 需要更新配置
    if ( $need_check_config )
    {
        OOP_ORM_Parse::check_config(
            OOP_ORM_Data::$_offset_setting[$class_name]
            ,
            OOP_ORM_Data::$_field_to_offset[$class_name]
            ,
            OOP_ORM_Data::$_all_id_field_name[$class_name]
        );
    }

    # 当前ID字段
    $this->_id_field_name = OOP_ORM_Data::$_all_id_field_name[$class_name];
}