您身边的网站建设专家
成功案例

【建站服务】平凉400电话办理【平凉网站公司】平凉百度优化、平凉域名注册、平凉网店美工、平凉微信公众号托管-域名申请

日期: 2022-09-20 15:50:43 浏览数:6


​

上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


平凉400电话办理【平凉网站公司】平凉百度优化、平凉域名注册、平凉网店美工、平凉微信公众号托管

网站建设.jpg

平凉,是甘肃省辖地级市,甘肃省人民政府批复确定的甘肃省域副中心城市,丝绸之路经济带重要节点城市,陕甘宁结合部以文化旅游和工贸物流为主的生态宜居城市。截至2020年4月,全市辖1个区、1个市、5个县,总面积1.1万平方公里,2019年末常住人口212.53万人。 [1-2] 

平凉地处中国西北地区,甘肃省东部,陕甘宁三省(区)交汇处,东邻陕西咸阳,西连甘肃定西、白银,南接陕西宝鸡、甘肃天水,北倚宁夏固原、甘肃庆阳。是西北地区重要的公路枢纽,欧亚大陆桥第二通道的重要中转站,甘肃东部重要的交通枢纽、商贸重镇和区域性中心城市,素有“陇上旱码头”之称。 [1] 

平凉是中华文明的发祥地之一,早在3000多年前,周朝就在泾河流域创造了比较先进的农耕文化。公元376年,前秦灭前凉,取“平定凉国”之意,置平凉郡,平凉之名自此始。平凉境内历史文化遗存众多,已发现仰韶文化、齐家文化等各个时期的文化遗址2257处。崆峒山道源文化、古成纪伏羲文化、西王母远古文化、皇甫谧医学文化独具魅力。 [1] 

市内有5A级旅游景区崆峒山、云崖寺、南石窟寺、泾川王母宫、崇信龙泉寺等名胜古迹,被评为中国优秀旅游城市、中国顾客最满意的十大风景名胜区、中国最值得外国人去的50个地方之一。 [1]  2018年12月,2018魅力中国城十大魅力榜单发布,平凉荣获“年度魅力文旅扶贫城市”。 [3]  2019年10月,被确定为“第三批城市黑臭水体治理示范城市”。 [4]  2020年10月,被评为全国双拥模范城(县)。

若继承于PhalApi_Model_NotORM,则Model子类的实现代码是:

<?phpclass Model_User extends PhalApi_Model_NotORM {
}

从上面的代码可以看出,基类已经提供了基于主键的CURD操作,并且默认根据规则自动使用user作为表名。相应地,当需要获取ID为1的用户信息时,外部调用则调整为:

$model = new Model_User();
$rs = $model->get(1);

再进一步,我们可以得到其他的基本操作:

$model = new Model_User();// 查询$row = $model->get(1);
$row = $model->get(1, 'id, name'); //取指定的字段$row = $model->get(1, array('id', 'name')); //可以数组取指定要获取的字段// 更新$data = array('name' => 'test', 'update_time' => time());
$model->update(1, $data); //基于主键的快速更新// 插入$data = array('name' => 'phalapi');
$id = $model->insert($data);//$id = $model->insert($data, 5); //如果是分表,可以通过第二个参数指定分表的参考ID// 删除$model->delete(1);

通过对比,可以发现,使用继承于PhalApi_Model_NotORM基类的写法更简单,并且更统一,而且能更好地封装对数据库的操作。因此,我们通常推荐使用此实现方式。

Model基类中的表名配置

上面继承了PhalApiModel_NotORM的Model_User类,对应默认的表名为:user。默认表名的自动匹配规则是:取“Model”后面部分的字符全部转小写,并且在转化后会加上配置的表前缀。下面是更多Model子类及其自动映射的表名示例。

// 对应userinfo表class Model_UserInfo extends PhalApi_Model_NotORM { }// 对应app_settings表class Model_App_Settings extends PhalApi_Model_NotORM { }// 对应tags表class Model_Tags extends PhalApi_Model_NotORM { }

但在以下场景或者其他需要手动指定表名的情况,可以重写PhalApi_Model_NotORM::getTableName($id)方法并手动指定表名。

如,当Model_User类对应的表名为:my_user表时,可这样重新指定表名:

<?phpclass Model_User extends PhalApi_Model_NotORM {    protected function getTableName($id) {        return 'my_user'; 
    }
}

其中,$id参数用于进行分表的参考主键,只有当存在分表时才需要用到。通常传入的$id是整数,然后对分表的总数进行求余从而得出分表标识。例如有10张分表的user_session表:

<?phpclass Model_User_UserSession extends PhalApi_Model_NotORM {    const TABLE_NUM = 10;    protected function getTableName($id) {
        $tableName = 'user_session';        if ($id !== null) {
            $tableName .= '_' . ($id % self::TABLE_NUM);
        }        return $tableName;
    }r

即存在分表时,需要返回的格式为:表名称 + 下划线 + 分表标识。分表标识通常从0开始,为连续的自然数。

这里小结一下,对于使用Model子类的方式,可以使用默认自动匹配的表名。若表名不符合项目的需求,可以通过重写PhalApi_Model_NotORM::getTableName($id)方法手动指定。最后,若存在有分表,则需要结合$id参数,按一定的规则,拼接返回分表格式的表名。

2.5.4 CURD基本操作

虽然上面的Model子类很好地封装了数据库的操作,但所提供的操作只是基本的操作,更多数据库的操作将在这一节进行详细说明。为了方便大家理解数据库的操作,假设数据库中已经有以下数据库表和纪录。

CREATE TABLE `tbl_user` (  `id` int(11) NOT NULL,  `name` varchar(45) DEFAULT NULL,  `age` int(3) DEFAULT NULL,  `note` varchar(45) DEFAULT NULL,  `create_date` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `tbl_user` VALUES ('1', 'dogstar', '18', 'oschina', '2015-12-01 09:42:31');INSERT INTO `tbl_user` VALUES ('2', 'Tom', '21', 'USA', '2015-12-08 09:42:38');INSERT INTO `tbl_user` VALUES ('3', 'King', '100', 'game', '2015-12-23 09:42:42');

并且,假设已获得了tbl_user表对应的NotORM实例$user。此NotORM表实例可从前面所介绍的两种方式获得:

// 全局获取方式$user = DI()->notorm->user;// 在Model_User类中的局部获取方式$user = $this->getORM();

下面将结合示例,分别介绍如何使用NotORM表实例进行基本的数据库操作。

SQL基本语句介绍

选择单个字段:

// SELECT id FROM `tbl_user`$user->select('id')

平凉400电话办理【平凉网站公司】平凉百度优化、平凉域名注册、平凉网店美工、平凉微信公众号托管


上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


全国咨询热线:400-111-6878

地址:全国各地都有驻点商务

Copyright © 2021 通陆科技

网站建设:上往建站