当前位置: 网站首页>小程序开发>网站优化

启东网站推广【启东办理400电话】启东SEO优化、启东微信公众号APP客户端小程序开发、启东网站托管、启东APP开发

发表日期: 2021-04-26 09:55:49 浏览次数:108

启东网站推广【启东办理400电话】启东SEO优化、启东微信公众号APP客户端小程序开发、启东网站托管、启东APP开发


启东市,江苏省直辖,南通市代管,位于江苏省东南端,长江入海口北岸,是江苏省日出最早的地方。 [1]  户籍总人口110.35万,常住人口94.95万(2019年)。 [2]  截至2020年6月,启东市下辖9个镇。 [3] 

后周显德五年(958年),置海门县于东布洲,隶于通州,海门县域包括今启东中部、北部地区。民国十七年(1928年),于崇明外沙设启东县。1989年,撤销启东县,设立县级启东市。 [14]  [56] 

启东是全国对外开放口岸 [4]  、中国建筑之乡 [5]  、国家卫生城市 [6]  、国家园林城市 [7]  、全国文明城市 [8]  、国家级生态示范区 [9]  、节水型社会建设达标县 [10]  、紧密型县域医共体建设试点县 [11]  、革命文物保护利用片区分县 [12]  ,海洋经济之乡、电动工具之乡、建筑之乡、教育之乡、版画之乡。 [1] 

2019年,启东市地区生产总值1157.55亿元,第一产业增加值79.64亿元,第二产业增加值581.29亿元,第三产业增加值496.62亿元。三次产业比为6.9:50.2:42.9。人均地区生产总值121879元。

而在服务端,仅需要在这些不同的入口文件,修改一下配置文件目录路径即可:

//$ vim ./Public/shop/test.phpDI()->config = new PhalApi_Config_File(API_ROOT . '/Config/Test');复制代码

另外,也可以使用相同的访问入口,但通过客户端在请求时带参数来作区分,如带上&env=test或者&env=prod。

持续集成下的配置管理

但个人最为建议的还是在持续集成下进行配置管理。因为首先,持续集成中的发布应该是经常性的,且应该是自动化的。所以,既然有自动化的支持,我们也应该及早地将配置纳入其中管理。

配置文件不同只要是环境不同,而环境不同所影响的配置文件通常只有sys.php和dbs.php;为此,我们为测试环境和生产环境准备了各自的配置文件,而在发布时自动选择所需要的配置文件。一般地,我们建议生产环境的配置文件以.prod结尾。所以,这时我们的配置文件可能会是这样:

$ tree ./Config/./Config/├── app.php├── app.php.prod├── dbs.php├── sys.php└── sys.php.prod复制代码

这里多了生产环境的配置文件:dbs.php.prod和sys.php.prod。

再通过发布工具,我们就可以对不同环境的配置文件进行快速选择了。这里以phing为例,说明一下相关的配置和效果。

在Phing的配置文件build.xml中,在生产环境发布过程中,我们将配置文件进行了替换。

        <copy 
            file="./Config/dbs.php.prod" 
            tofile="./Config/dbs.php" 
            overwrite="true" />
        <copy 
            file="./Config/sys.php.prod" 
            tofile="./Config/sys.php" 
            overwrite="true" />复制代码

执行phing发布后,将会看到对应的这样提示:

     [copy] Copying 1 file to /path/to/PhapApi/Config
     [copy] Copying 1 file to /path/to/PhapApi/Config复制代码

2.4.3 使用Yaconf扩展快速读取配置

Yaconf扩展需要PHP 7及以上版本,并且需要先安装Yaconf扩展。

温馨提示:Yaconf扩展的安装请参考laruence/yaconf

安装部署完成后,便和正常的配置一样使用。

// 注册DI()->config = new PhalApi_Config_Yaconf();// 相当于var_dump(Yaconf::get("foo"));var_dump(DI()->config->get('foo'));//相当于var_dump(Yaconf::has("foo"));var_dump(DI()->config->has('foo'));复制代码

需要注意的是,使用Yaconf扩展与默认的文件配置的区别的是,配置文件的目录路径以及配置文件的格式。当然也可以把Yaconf扩展的配置目录路径设置到PhalApi的配置目录./Config。

2.4.4 扩展你的项目

扩展其他配置读取方式

虽然上面有不同的配置文件管理策略,但很多实际情况下,我们的配置需要可以随时更改、下发和调整。并且在海量访问,性能要求高的情况下快速读取配置。

这就要求我们的项目既可以方便维护即时修改,又需要能够快速同步一致更新下发和读取。这样就涉及到了配置更高层的管理:统一集中式的配置管理,还是分布式的配置管理?文件存储,还是DB存储,还是MC缓存,还是进驻内存?

这里不过多地谈论配置更多的内容,但在PhalApi框架中,根据需要实现PhalApi_Config::get($key, $default = NULL)接口后,再次简单的在入口文件重新注册即可。

2.5 数据库操作

PhalApi的数据库操作基于NotORM,并且专为海量数据而设计,即可支持分库分表的配置。此外,还有辅助的SQL生成脚本命令、在线调试功能。

2.5.1 NotORM简介

NotORM是一个优秀的开源PHP类库,可用于操作数据库。PhalApi的数据库操作,主要是依赖此NotORM来完成。

参考:NotORM官网:www.notorm.com

所以,如果了解NotORM的使用,自然而然对PhalApi中的数据库操作也就一目了然了。但为了更符合接口类项目的开发,PhalApi对NotORM的底层进行优化和调整。以下改动点包括但不限于:

  • 将原来返回的结果全部从对象类型改成数组类型,便于数据流通

  • 添加查询多条纪录的接口:NotORM_Result::fetchAll()NotORM_Result::fetchRows()

  • 添加支持原生SQL语句查询的接口:NotORM_Result::queryAll()NotORM_Result::queryRows()

  • limit 操作的调整,取消原来OFFSET关键字的使用

  • 当数据库操作失败时,抛出PDOException异常

  • 将结果集中以主键作为下标改为以顺序索引作为下标

  • 禁止全表删除,防止误删

  • 调整调试模式

如何获取NotORM实例?

在PhalApi中获取NotORM实例,有两种方式:全局获取方式、局部获取方式。

  • 全局获取:在任何地方,使用DI容器中的全局notorm服务:DI()->notorm

  • 局部获取:在继承PhalApi_Model_NotORM的子类中使用:$this->getORM()

第一种全局获取的方式,可以用于任何地方,这是因为我们已经在初始化文件中注册了DI()->notorm这一服务。

// 数据操作 - 基于NotORMDI()->notorm = new PhalApi_DB_NotORM(DI()->config->get('dbs'), DI()->debug);复制代码

然后,再添加表名属性,即可使用相应的数据库表实例了。如user表的实例:DI()->notorm->user

第二种局部获取的方式,仅限用于继承PhalApi_Model_NotORM的子类中。首先需要实现相应的Model子类,通常一个表对应一个Model子类。例如为user表创建相应的Model类。

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

    public function doSth() {
        // 获取NotORM表实例,在这里相当于:DI()->notorm->user
        $user = $this->getORM(); 
    }}复制代码

与全局获取方式不同的是,$this->getORM()获取的就已经是表实例,不需要再在后面添加表名。

NotORM表实例状态

使用NotORM时,值得注意的是,NotORM的表实例是有内部状态的,即可以保持操作状态。故而在开发过程中,需要特别注意何时需要保留状态(使用同一个实例),何时不需要保留状态(使用不同的实例)。

c51c866ffa1ab3457f2021e8bbdbcc1.jpg


启东网站推广启东办理400电话启东SEO优化、启东微信公众号APP客户端小程序开发、启东网站托管、启东APP开发


400-111-6878
服务热线
顶部

备案号: 苏ICP备11067224号

CopyRight © 2011 书生商友信息科技 All Right Reserved

24小时服务热线:400-111-6878   E-MAIL:1120768800@qq.com   QQ:1120768800

  网址: http://www.768800.com  网站建设上往建站

关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|

企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|

400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|

预约专家

欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系

  

服务热线:400-111-6878