当前位置: 首页 > news >正文

马蹄网关于进一步优化

马蹄网,关于进一步优化,手机建站最好的网站,六安火车站网站学习路之PHP--easyswoole操作数据库 0、安装orm插件一、创建数据库二、创建模型三、控制器显示四、效果五、问题 0、安装orm插件 composer require easyswoole/orm一、创建数据库 表: CREATE TABLE cases (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,titl…

学习路之PHP--easyswoole操作数据库

  • 0、安装orm插件
  • 一、创建数据库
  • 二、创建模型
  • 三、控制器显示
  • 四、效果
  • 五、问题

0、安装orm插件

composer require easyswoole/orm

一、创建数据库

在这里插入图片描述

  1. 表:
CREATE TABLE `cases`  (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',`title` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '标题',`content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '内容',`create_time` int(10) NOT NULL COMMENT '创建时间',PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 21 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  1. 随便写入几条数据
INSERT INTO `test`.`cases`(`id`, `title`, `content`, `create_time`) VALUES (1, '示剑网络副总经理接受电视台采访', 'test', 1536223828);
INSERT INTO `test`.`cases`(`id`, `title`, `content`, `create_time`) VALUES (3, '微信小程序超级入口,新一轮红利又将爆发', 'test', 1605757832);
INSERT INTO `test`.`cases`(`id`, `title`, `content`, `create_time`) VALUES (4, '北京小程序开发公司哪家好?', 'test', 1535963051);
  1. 配置mysql数据库连接
    打开easyswoole根目录下的dev文件,跟MAIN_SERVER同级,新增
'MYSQL'=>['host' => '你自己的IP','port' => '端口','user' => 'root','password' => '123456','database' => 'test','timeout' => 5,'charset' => 'utf8mb4',
],
  1. 注册配置的mysql数据库
    EasySwooleEvent.php
use EasySwoole\ORM\DbManager;
use EasySwoole\ORM\Db\Connection;class EasySwooleEvent implements Event
{public static function initialize(){// TODO: Implement initialize() method.date_default_timezone_set('Asia/Shanghai');$config = new \EasySwoole\ORM\Db\Config(Config::getInstance()->getConf('MYSQL'));DbManager::getInstance()->addConnection(new Connection($config));}

二、创建模型

App\Models\Case.php

<?php
namespace AppModels;
use EasySwoole\ORM\AbstractModel;
use EasySwoole\Mysqli\QueryBuilder;
/*** 案例模型*/
class Cases extends AbstractModel
{/*** @var string*/ protected $tableName = 'cases'; //表名protected $primaryKey = 'id'; //主键public function getAll(int $page = 1, string $keyword = null, int $pageSize = 3): array{$list = $this->limit($pageSize * ($page - 1), $pageSize)->order($this->primaryKey, 'DESC')->withTotalCount()->all(function (QueryBuilder $queryBuilder) use ($keyword) { //用use才能将外部参数传入闭包$queryBuilder->where('title', "%{$keyword}%", 'like');});$total = $this->lastQueryResult()->getTotalCount(); //获取结果条数return ['total' => $total, 'list' => $list];}}

三、控制器显示

App\HttpController\Index.php

use EasySwoole\Http\AbstractInterface\Controller;
use App\Models\Cases;class Index extends Controller
{public function index(){$request = $this->request();$keyword = $request->getRequestParam('keyword');$page = $request->getRequestParam('page')??1;$case = new Cases();$result = $case->getAll($page, $keyword);$this->writeJson(0, $result, "success");

四、效果

在这里插入图片描述

五、问题

  1. ERROR php_swoole_server_rshutdown() (ERRNO 503): Fatal error: Class ‘EasySwoole\ORM\AbstractModel’ not found in /www/wwwroot/easyswoole/App/Models/Cases.php on line 11

解决方案是重启进程
在这里插入图片描述
2. connection : default not register

connection : default not register
#0 /www/wwwroot/easyswoole/vendor/easyswoole/orm/src/Utility/PreProcess.php(18): EasySwoole\ORM\AbstractModel->schemaInfo()
#1 /www/wwwroot/easyswoole/vendor/easyswoole/orm/src/AbstractModel.php(553): EasySwoole\ORM\Utility\PreProcess::mappingWhere(Object(EasySwoole\Mysqli\QueryBuilder), Object(Closure), Object(App\Models\Cases))
#2 /www/wwwroot/easyswoole/App/Models/Cases.php(25): EasySwoole\ORM\AbstractModel->all(Object(Closure))
#3 /www/wwwroot/easyswoole/App/HttpController/Index.php(19): App\Models\Cases->getAll(1, NULL)

解决方案。注册mysql数据库配置,
EasySwooleEvent.php


use EasySwoole\ORM\DbManager;
use EasySwoole\ORM\Db\Connection;$config = new \EasySwoole\ORM\Db\Config(Config::getInstance()->getConf('MYSQL'));
DbManager::getInstance()->addConnection(new Connection($config));

最后重启进程
在这里插入图片描述

http://www.cadmedia.cn/news/15024.html

相关文章:

  • 大连最新发布谷歌seo运营
  • seo上海公司长春网站建设方案优化
  • 地接做的网站百度网站怎么优化排名靠前
  • 建筑工程网官方网站山东进一步优化
  • 什么是营销型的网站怎么做属于自己的网站
  • 南昌定制网站开发手机百度网盘网页版登录入口
  • 可直接进入网站的代码大连百度网站排名优化
  • 外贸建站选择哪个服务器好珠海seo排名收费
  • 安康网站建设公司优化关键词排名的工具
  • 网站北京备案快吗学网络与新媒体后悔死了
  • 网络推广赚钱项目贵州整站优化seo平台
  • 沂源网站推广app的单子都在哪里接的
  • 大型网站制作公司飞数诊断网站seo现状的方法
  • 移动课程播放网站建设多少钱免费个人网站空间
  • 做亚马逊和淘宝网站比较好网站制作公司
  • 企业网站建设学习免费网站在线观看人数在哪
  • 长春建站软件知乎关键词排名工具
  • 招聘网站建设计划书微商软文大全
  • 如何做网站内容架构分析新浪博客
  • 上海建设牌电动三轮官方网站口碑营销策略
  • 网站qq在线客服系统宣传软文是什么意思
  • seo整站优化方法seo外链专员工作要求
  • 建设个人网页登陆网站兰州百度推广的公司
  • 网站建设说推广引流方法有哪些推广方法
  • 软件开发是做什么工作的厦门seo俱乐部
  • 关于政府网站建设请示卡广告联盟有哪些
  • 北京市场调研公司seo关键词推广优化
  • 北京网站制作南昌免费开店的电商平台
  • 免费的网站有哪些平台seo快速排名服务
  • 广西城乡建设委员会的网站如何做seo搜索引擎优化