后端
「已注销」
PHP开光工程师
展开
-
Linxu基础笔记
date 时间date "+%Y-%m-%d - %H:%M:%S"whowunameuptimelastfree进入编辑模式vim 或者 vi原创 2019-08-27 12:06:58 · 103 阅读 · 0 评论 -
php一个循环两套数据
//组合数据$data = [];foreach ($list as $item) { $tmp = []; $tmp['type'] = self::TYPE_ARTICLE; $tmp['platform'] = self::PLATFORM_MOBILE; $tmp['url'] = sprintf($this->m_host . '/'.$dat...原创 2019-08-21 09:24:54 · 417 阅读 · 0 评论 -
百度推送站点信息以及日志记录
<?php/** * * User: guo * Date: 2019-08-20 */namespace console\controllers;use backend\models\BaiduPushList;use backend\models\BaiduPushLog;use yii\console\Controller;class BaiduPus...原创 2019-08-21 09:22:55 · 431 阅读 · 0 评论 -
Yii2命令行下百度sitemap生成xml文件以及索引文件
<?php/** * * User: guo * Date: 2019-08-19 */namespace console\controllers;use backend\models\Article;use backend\models\Question;use yii\console\Controller;use yii\helpers\FileHelpe...原创 2019-08-20 09:06:48 · 491 阅读 · 0 评论 -
php模糊查询候选项高亮展示
html:<div class="layui-form-item"> <label class="layui-form-label"><font style="color: red;">*</font> 公司名称</label> <div class="layui-input-block" style="widt...原创 2019-08-02 14:14:35 · 183 阅读 · 0 评论 -
Mac安装elasticsearch中文分词器
{ "name" : "1vFT9YZ", "cluster_name" : "elasticsearch_gwz", "cluster_uuid" : "lxBMLC2DRpKOYoGBHDCpwQ", "version" : { "number" : "6.8.1", "build_flavor" : "oss", "build_type" : "ta...原创 2019-07-26 17:21:18 · 1814 阅读 · 0 评论 -
Yii2操作elasticsearch封装model
<?php/** * 问答ES模型 * Created by PhpStorm. * DateTime: 2019/7/18 11:48 */namespace backend\models;use yii\elasticsearch\ActiveRecord;use yii\data\Pagination;use yii\helpers\ArrayHelper;u...原创 2019-07-26 10:41:53 · 756 阅读 · 0 评论 -
解决谷歌浏览器下载缓慢问题
下载某个文件的时候发现网速很慢,而且不一会网速就归零了,然后谷歌浏览器就会断开连接,然后就又得重新来过。。。为了防止这个可以尝试新方法用wget方法下载首先获取一下要下载的连接然后命令行输入wgethttps://artifacts.elastic.co/downloads/kibana/kibana-6.2.2-darwin-x86_64.tar.g...原创 2019-07-25 18:26:18 · 9201 阅读 · 0 评论 -
elasticsearch之倒排索引
倒排索引原理1.The quick brown fox jumped over the lazy dog2.Quick brown foxes leap over lazy dogs in summer倒排索引:Term Doc_1 Doc_2-------------------------Quick | | XThe | X ...原创 2019-07-25 18:15:33 · 214 阅读 · 0 评论 -
layui+cropper+php图片裁剪
上传成功后展示:js资源地址:链接:https://pan.baidu.com/s/1jUvnHpGbMhPMjTPIpUCcNw 密码:q8ij========================================以下为代码==========================================================html:&l...原创 2019-10-17 10:07:10 · 1568 阅读 · 0 评论 -
Yii2joinWith多条件查询
比如说我现在有一个需求1.完成首页展示以及搜索。需要搜所内容如下最后分析下来发现有三个表经纪人表 (这里 比作 a 表)公司表 (这里比作b表)经理人开通服务表 (这里比作c表)如果要实现需要关联经纪人表、公司表、经理人开通服务表如果拼接原生sql那么就是 select * from a left join a.company_id = b.company...原创 2019-07-15 17:42:03 · 2311 阅读 · 0 评论 -
LayUi+PHP多图片上传
html部分<div class="layui-form-item"> <label class="layui-form-label"><font style="color: red;">*</font>保险代理从业人员执业证书</label> <div class="layui-input-block">...原创 2019-07-09 17:14:20 · 1852 阅读 · 0 评论 -
PHP原生文件导出,四行代码搞定
csv文件是以逗号为分隔符号,将各字段列分离出的一种ASCII文件。也就是说csv格式的我们用四行代码就可以搞定$csvFilePath = 'upload/excel/data_'.date('Ymd').'.csv';//选好地址$fp = fopen($csvFilePath, 'w');//以写的方式打开,如果没有该文件尝试创建//fputcsv() 函数将行格式化为 CS...原创 2019-06-28 14:27:09 · 212 阅读 · 0 评论 -
Go语言冒泡排序
//go冒泡排序func main() { a := [...] int{10, 3, 5, 8, 6, 9, 4, 7}; len := len(a); for i := 0; i < len; i++ { for j := i+1; j < len; j++ { if a[i] < a[j] { ...原创 2019-08-26 13:59:36 · 120 阅读 · 0 评论 -
swoole学习(一) - 进程之间的通讯方式
进程之间的通讯方式-管道1.管道是一组(2个)特殊的描1述符单向通讯A进程只能通过A自己搭建的管道给B进程信息B进程只能通过B自己搭建的管道给A进程信息2.管道需要在fork函数调用前创建3.如果某一端主动关闭管道,另一端读取操作会直接返回0进程之间的通讯方式-消息队列1.通过一个key值来创建一个消息队列 独立于两个子进程之外2.在消息队列...原创 2019-08-26 14:21:02 · 423 阅读 · 0 评论 -
swoole学习(十二) - Hprose相关知识
RPC运行模式请求发送给RPC Server,RPC Server处理请求返回给调用方1.RPC是一种进程间的通讯方式,全称是"远程调用过程"2.提供与调用本地服务无差别的远程调用方法Hprose介绍1.Hprose是一个轻量级的高性能跨语言RPC服务框架2.提供同步、异步、协程等多种调用方式Hprose使用服务端:客户端:...原创 2019-08-27 10:26:21 · 271 阅读 · 0 评论 -
swoole学习(十一) - Http、RPC、TCP结合使用
下载地址:github搜索"Hprose"https://github.com/hprose/hprose-php.git功能:快速构建跨语言RPC的框架项目内容:1.一个Http端口提供web请求服务2.一个TCP端口提供RPC服务3.一个UDP端口用于接收广播消息...原创 2019-08-27 10:04:22 · 274 阅读 · 0 评论 -
swoole学习(十) - swoole_server::listen
swoole_server::listenhttps://wiki.swoole.com/wiki/page/367.html函数功能:创建一个额外监听端口官方函数说明:bool Server->listen(string $host, int $port, int $type);注意事项:1.Listen方法会返回一个swoole_server_port对象,可以...原创 2019-08-27 09:52:16 · 352 阅读 · 0 评论 -
swoole学习(九) - 协议
EOF协议 - 可以在启动服务时候set函数写入该参数用一组固定的、不会在正常数据内出现的字符串作为分割协议的标记,称之为EOF协议固定包头协议1.在数据首部加上一组固定格式的数据作为协议头,称之为固定包头协议2.协议头格式必须固定,并且其中需要标明后续的长度3.长度格式只支持"S,L,V,N"和"s,l,v,n"...原创 2019-08-27 09:38:30 · 110 阅读 · 0 评论 -
swoole学习(八) - WebSocketServer
WebSocketServer结构https://wiki.swoole.com/wiki/page/397.html1.WebSocketServer是在swoole_http_server基础上增加了协议解析2.完整的WebSocket协议请求会被解析并封装在frame对象内3.新增push方法用于发送websocket数据WebSocketServer封装swo...原创 2019-08-26 17:20:15 · 152 阅读 · 0 评论 -
swoole学习(七) - swoole_http使用
https://wiki.swoole.com/wiki/page/327.html<?php$serv = new swoole_http_server('127.0.0.1', '9502');$serv->on('Request', function ($request, $response){ var_dump($request->get); ...原创 2019-08-26 16:09:32 · 172 阅读 · 0 评论 -
swoole学习(六) - swoole_http_response
swoole_http_responsehttps://wiki.swoole.com/wiki/page/336.html1.swoole_http_response::gzip( $level = 1 ) 开启gzip压缩2.swoole_http_response::write( $data ) 启用Http Chunk分段向浏览器发送响应内容3.swoole_http...原创 2019-08-26 16:02:27 · 447 阅读 · 0 评论 -
swoole学习(五) - swoole_http_request
swoole_http_requesthttps://wiki.swoole.com/wiki/page/328.html1.$hearde - Http请求头部分,类型为数组,所有均小写2.$server - Http请求相关服务器信息3.$get - Http请求的GET参数,相当于$_GET4.$post -Http请求的POST参数,相当于$_POST,Content...原创 2019-08-26 15:55:44 · 482 阅读 · 0 评论 -
swoole学习(四) - Http Server
https://wiki.swoole.com/wiki/page/328.htmlswoole http server模块结构如下 (swoole_http_server)1.HttpServer本质是swoole_server,其协议解析部分固定使用Http协议解析2.完成的http协议请求会被解析并封装在swoole_http_request对象中3.所有的http响应都...原创 2019-08-26 15:43:54 · 172 阅读 · 0 评论 -
swoole学习 - swoole结构
swoole结构运行流程进程概念1.子进程会复制父进程的内存空间和上下文环境2.修改某个子进程内存空间,不会修改父进程和其他子进程中的内存空间共享内存概念1.共享内存不属于任何一个进程2.在共享内存分配的内存空间可以被任何进程访问3.即使进程关闭,共享内存仍然可以继续保留...原创 2019-08-26 15:26:45 · 123 阅读 · 0 评论 -
swoole学习(三) - swoole_process
swoole_process1.基于C语言封装的进程管理模块,方便PHP多进程编程2.内置管道、消息队列接口,可方便进程之间的通讯3.提供自定义信号管理swoole swoole_process函数官方文档https://wiki.swoole.com/wiki/page/214.html...原创 2019-08-26 15:01:55 · 171 阅读 · 0 评论 -
swoole学习(二) - Event Loop
Event Loop1.swoole会在启动时候在底层启动一个线程,这个线程会运行一个epoll函数的实例并且会为他设置读和写的监听2.event loop是一个reactor线程3.可以通过接口添加socket描述到epoll监听中,并指定事件响应的回调函数4.event loop不可用于 FPM环境中Q:为什么开启了event loop的程序会一直运行不停止?A:开启E...原创 2019-08-26 14:42:45 · 195 阅读 · 0 评论 -
LayUi数据表格自定义赋值
官方写的非常抽象,反正我是没看懂,可能还没到能看懂前端的级别自己也是百度的一开始想去实现一个用的是定义表头参数:{field: 'status', title: '状态', width: 150, templet:'#manager_status',align:'center'}然后js部分:<script type="text/html" id="man...原创 2019-07-12 18:03:22 · 5508 阅读 · 0 评论 -
PHP三级联动
html部分<div class="layui-form-item" > <label class="layui-form-label"><font style="color: red">*</font>所在地区</label> <div class="layui-input-block" style="widt...原创 2019-07-08 17:50:36 · 1049 阅读 · 0 评论 -
PHP原生多条件搜索
$sql = "select * from table where 1 = 1"; $where = '';if(!empty($条件一)){$where .= " and 字段名=条件一的值";}if(!empty($条件二)){$where .= " and 字段名=条件二的值";}………if(!empty($条件N)){$wher...原创 2019-06-24 16:58:10 · 1238 阅读 · 0 评论 -
服务模式详解
该服务模式建立于lumen框架大致讲下流程1.首先单一入口文件 index.php 2.创建应用:入口文件加载bootstrap下的app.php文件 该文件会加载某些第三方比如commposer等以及注册服务容器。详见(https://laravelacademy.org/post/769.html =>Laravel 服务容器实例教程 —— 深入理解控制反转(IoC)...原创 2018-12-13 18:59:28 · 352 阅读 · 0 评论 -
DDD领域驱动架构模式
软件分层(上层)接入层 → Api层 → 聚合模块 → 基础模块(下层)分层规则:上层可调用下层,下层不可调用下层 基础模块不可调用任何其它模块 同层之间不可有相互调用 组件 名称 职责 Entity 实体 承载了本领域的所有业务逻辑。实体包含属性和行为。对一个领域进行抽象可能会形成多个...原创 2018-12-13 18:32:53 · 1762 阅读 · 0 评论 -
PHP关于引用值传递的使用
需求:将返回数据中的amdin_uid替换为admin_uid对应的姓名 将权限的key(permissions_key)替换为 权限所对应的名称"data": [ { "id": 5173, "admin_uid": 1, "org_id": 9, ...原创 2018-12-13 14:49:05 · 134 阅读 · 0 评论 -
lumen判断时间条件是否执行
//该代码解析成 sql 为 select * from count_survey where date >= '$start' and date <= '$end' order by date desc limit 0,20//该sql要做的是根据日期搜索数据后并分页DB::table('count_survey') //解释该语法 when:何时,何时执行代码。 方...原创 2018-11-28 18:37:23 · 688 阅读 · 0 评论 -
php获取两个数组相同的元素(交集)以及比较两个数组中不同的元素(差集)
(一)php获取两个数组相同元素 array array_intersect(array $array1, array $array2, [, array $...]) array array_intersect_assoc(array $array1, array $array2, [, array $...]) 这两个方法的功能基本一致,都是返回两个数组(...转载 2018-11-14 17:26:29 · 639 阅读 · 0 评论 -
获取第三方公告方案分析
操作 可能遇到的问题 解决方案 正常结果 备注 获取zendesk到缓存 第三方网站不可用;布局更改; 取之前有效期内(60min)前三条记录 如不存在提示 { "title": "公告系统维护中", "url": "https://bcexglobal.zendesk.com/hc/en-u...原创 2018-11-08 10:07:39 · 162 阅读 · 0 评论 -
PHP抓取页面中a标签的href属性值以及a中间内容
$str = file_get_contents($zh_cn_url);$reg1='/<a href=\"(.*?)\".*?>(.*?)<\/a>/i';//匹配所有A标签preg_match_all($reg1,$str,$aarray);//这个$aarray 你可以打印一下看下你具体的业务需要哪个数组//这个$aarray 是整个抓取的核心$...原创 2018-11-06 13:26:36 · 10655 阅读 · 0 评论 -
CURL请求GET与POST
<?phpclass Action{ public static function curl_get($url){ $testurl = $url; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $testurl); //參...原创 2018-10-08 15:59:38 · 141 阅读 · 0 评论 -
PHP将一个二维数组,以其中一列为KEY,一列为VALUE,返回一个一维数组
/** * 将一个二维数组,以其中一列为KEY,一列为VALUE,返回一个一维数组 * @param array $array * @param null $column_key * @param $index_key * @throws \Exception * @return array */public static function arrayColumn($array, ...原创 2018-06-26 10:27:13 · 3032 阅读 · 0 评论 -
PHP多维数组去重
/** * 多维数组去重 * @param array $arr [description] * @return [type] [description] */static function super_unique($array, $recursion = false){ // 序列化数组元素,去除重复 $result = array_map('unseria...原创 2018-06-26 10:14:51 · 1214 阅读 · 0 评论