摘要:
先上一段代码,支持大文件下载和断点续传,代码来源互联网。 代码有详细的解释,也很清楚,但是在实际使用时还是小文件可以下载,大文件只能下载前半部分或者出现文件已损坏的情况。查看nginx日志发现如下报错 原来在下载大文件时,文件大小超过配置的proxy_temp_file_write_size值时,n 阅读全文
posted @ 2018-11-17 20:53
sfornt
阅读(909)
评论(0)
推荐(0)
摘要:
Laravel请求到响应的整个执行过程,主要可以归纳为四个阶段,即程序启动准备阶段、请求实例化阶段、请求处理阶段、响应发送和程序终止阶段。 程序启动准备阶段 服务容器实例化 服务容器的实例化和基本注册,包括了服务容器本身注册、基础服务提供者注册、核心类别名注册和应用的基本路径注册。注册的服务只是具体 阅读全文
posted @ 2018-11-17 20:53
sfornt
阅读(365)
评论(0)
推荐(0)
摘要:
前言 任何一个工具都有它的灵魂所在,作为一个PHP程序员,我们可能仅仅使用了它的一小部分,这篇文章让你更加了解Nginx,本章大多都是总结、翻译、整理 ,希望你可以知道nginx不仅仅是PHP的附属品,更宏观的认识它的强大。 变量 内置变量存放在 ngx_http_core_module 模块中,变 阅读全文
posted @ 2018-11-17 20:52
sfornt
阅读(136)
评论(0)
推荐(0)
摘要:
计数排序不是基于比较的排序算法,其核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。 作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。 算法描述 参考文章: https://www.cnblogs.com/onepi... 原文地址:https://segment 阅读全文
posted @ 2018-11-17 20:51
sfornt
阅读(580)
评论(0)
推荐(0)
摘要:
首先本篇主要讲3点 一个Yii时间日期组件的两种用法 笔者使用composer下载该组件时出现问题的解决办法 1、composer下载出现的问题 猜想是网络问题【具体原因没懂,欢迎大神留言论述】解决办法:切换移动手机热点,就可以了! 2、时间日期(有日期有时间的:如1970 01 01 12:00: 阅读全文
posted @ 2018-11-17 20:51
sfornt
阅读(244)
评论(0)
推荐(0)
摘要:
我们知道,在 Laravel 世界里,外界传进来一个 Request 时,会被 Kernel 处理并返回给外界一个 Response。Kernel 在处理 Request 时,会调用 illuminate/routing 包提供的路由功能,来根据当前的 Request,转发到对应的执行逻辑(执行逻辑 阅读全文
posted @ 2018-11-17 20:50
sfornt
阅读(610)
评论(0)
推荐(0)
摘要:
前言 最近在项目中遇到一个问题,当前用户分享一个邀请码给好友,好友根据邀请码注册成为新用户之后,则成为当前用户的下级,特定条件下,可以得到下级用户的一系列返利。这里要实现的就是根据当前用户的id,生成一个加密串,并且可以反向解密。经过不断的测试调整,终于得到了最后的结果。如: id = 12 cod 阅读全文
posted @ 2018-11-17 20:49
sfornt
阅读(2123)
评论(0)
推荐(0)
摘要:
这几天在做小程序的支付,没有用官方的SDK,这里就纯用官方的文档搞一发。 注作者使用的PHP,不过支付流程都是这样 开发前必读 主要流程 小程序前端发送求参请求 接受请求封装 “统一下单” 获取package 小程序接受 “统一下单” 获取的package值带入wx.requestPayment发起 阅读全文
posted @ 2018-11-17 20:48
sfornt
阅读(999)
评论(0)
推荐(0)
摘要:
什么是生成器Generators 生成器允许你在 foreach 代码块中写代码来迭代一组数据而不需要在内存中创建一个数组, 那会使你的内存达到上限,或者会占据可观的处理时间。相反,你可以写一个生成器函数,就像一个普通的自定义函数一样, 和普通函数只返回一次不同的是, 生成器可以根据需要 yield 阅读全文
posted @ 2018-11-17 20:47
sfornt
阅读(194)
评论(0)
推荐(0)
摘要:
祭出两个相同(其实不同)的字符串 我们肉眼看到的这两个字符串是绝对相同的, 对的, 他是一个'8888', 让我们用 php (世界上最好的语言) 输出下两个字串的长度 我滴妈呀, 怎么会不同呢, 纳闷.. 让我们撕下她的伪装 咦, 这是个什么鬼. 不像是正常字符啊. 哦, 对了, 我们是用的Utf 阅读全文
posted @ 2018-11-17 20:42
sfornt
阅读(167)
评论(0)
推荐(0)
摘要:
一、实验环境ubuntu、php、apache或nginx、mysql二、利用Redis锁解决高并发问题,需求现在有一个接口可能会出现并发量比较大的情况,这个接口使用php写的,做的功能是接收 用户的GET请求中的name字段,然后将这个字段存到mysql中,现在先将数据放到redis的队列中,然后 阅读全文
posted @ 2018-11-17 19:58
sfornt
阅读(6257)
评论(0)
推荐(0)
摘要:
laravel 开发辅助工具 配置 添加服务提供商 将下面这行添加至 config/app.php 文件 providers 数组中: 插件及文档 redisToken认证 Repository 模式 表单搜索辅助插件 Excels导出辅助插件 Sign 加签 Sql 写进日志 事件 Control 阅读全文
posted @ 2018-11-17 19:57
sfornt
阅读(482)
评论(0)
推荐(0)
摘要:
$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。不能保证每个服务器都提供全部项目;服务器可能会忽略一些,或者提供一些没有在这里列举出来的项目。 $_SERVER['HT 阅读全文
posted @ 2018-11-17 19:44
sfornt
阅读(187)
评论(0)
推荐(0)
摘要:
redis介绍 是远程的,有客户端、服务端 存内存,吃内存 应用场景 缓存 队列 list操作 push pop 数据存储【根据redis硬盘持久化的机制,这里不展开】 5种数据类型 string 字符串、整数、浮点 list 序列集合 set 各不相同的元素的集合 hash key value k 阅读全文
posted @ 2018-11-17 19:42
sfornt
阅读(452)
评论(0)
推荐(0)
摘要:
上一篇文章 为七牛云存储空间绑定自定义域名,并使用七牛云提供的免费SSL证书,将自定义加名升级为HTTPS 我们提到利用七牛的免费SSL证书,将自定义加名升级为HTTPS的方法。 不知道有没有小伙伴会像我一样担心一年七牛的SSL证书不免费了怎么办?每个域名每年都要几千块的支出对于个人和小企业来说还是 阅读全文
posted @ 2018-11-17 19:41
sfornt
阅读(822)
评论(0)
推荐(0)
摘要:
接手了同事的项目,其中有一个功能是保存邮件模板(包含图片),同事之前的做法是把图片进行base64编码然后存在mysql数据库中(字段类型为mediumtext)然后保存三张图片(大概400k)的时候报错MySQL server has gone away 然后查看官方文档https://dev.m 阅读全文
posted @ 2018-11-17 19:39
sfornt
阅读(2111)
评论(0)
推荐(0)
摘要:
前言 没有任何一名程序员可以一气呵成、完美无缺的在不用调试的情况下完成一个功能或模块。调试实际分很多种情况。本篇文章我分享下自己在实际开发工作中的经验,我个人理解,调试分三种,注意我所讲的是调试并非测试 功能调试 组件调试 片段调试 功能调试是指在完成一个功能或者正在完成功能的过程中进行的错误、逻辑 阅读全文
posted @ 2018-11-17 19:38
sfornt
阅读(908)
评论(0)
推荐(0)
摘要:
项目中遇到的问题:1.前台为商品扫码数据埋点(二维码中的链接是外链,不是自己的后台),如果直接放外链的话,是统计不到数据的,所以需要先请求到自己后台,然后重定向外链。2. 二维码中链接如果太长,二维码的点会很多,手机扫码识别时间加长,需要设计短链接替换策略 1. vue前端 引用qrcode lit 阅读全文
posted @ 2018-11-17 19:37
sfornt
阅读(2277)
评论(0)
推荐(0)
摘要:
最近发现自己写的PHP代码运行结果总跟自己预想的不一样,排查时发现大多是语法错误,在运行之前错误已经种下。可能是自己粗心大意,或者说php l检测太简单,不过的确是有一些语法错误埋藏得太深(毕竟PHP是动态语言),那么有没有办法,在代码代码正式运行之前,把语法错误全找出来呢? 这里介绍一款PHP代码 阅读全文
posted @ 2018-11-17 19:35
sfornt
阅读(2153)
评论(0)
推荐(0)
摘要:
目的 用PHP生成HTML文档, 支持标签嵌套缩进, 支持标签自定义属性 起因 这个东西确实也是心血来潮写的, 本来打算是输出HTML片段用的, 但后来就干脆写成了一个可以输出完整HTML的功能; 我很满意里边的实现缩进的机制, 大家有用到的可以看看p.s. 现在都是真正的前后端分离了(vue, n 阅读全文
posted @ 2018-11-17 19:34
sfornt
阅读(405)
评论(0)
推荐(0)
摘要:
小程序模板消息报错41028 序 最近在写小程序支付回调的时候,想要去触发小程序模板消息,然而过程却很不顺利。一切参数正确的情况下,尽然返回报错41028 41028报错解释 官方:form_id不正确,或者过期 form_id是什么 即wxml文件里面的form表单提交后产生的ID,我这里使用的是 阅读全文
posted @ 2018-11-17 19:33
sfornt
阅读(667)
评论(0)
推荐(0)
摘要:
date: 2018 8 01 14:22:17title: swoft| 源码解读系列二: 启动阶段, swoft 都干了些啥?description: 阅读 sowft 框架源码, 了解 sowft 启动阶段的那些事儿 小伙伴刚接触 swoft 的时候会感觉 压力有点大, 更直观的说法是 难. 阅读全文
posted @ 2018-11-17 19:32
sfornt
阅读(1382)
评论(0)
推荐(0)
摘要:
使用 Laravel5.5 开发一个自动交割的项目,把使用到的开源扩展包及特性整理起来,以供后续使用。 一、安装IDE提示工具 Laravel IDE Helper 是一个极其好用的代码提示及补全工具,可以给编写代码带来极大的便利。 1、安装 安装 doctrine/dbal 「请装上它,在为模型注 阅读全文
posted @ 2018-11-17 19:31
sfornt
阅读(399)
评论(0)
推荐(0)
摘要:
Vagrant 简介 安装 常用命令 homestead 下载box(homestead) box镜像 调整后的Vagrantfile配置 启动 解决错误 初始化工作 安装扩展 建议后续安装的扩展 查看常用服务 打包vagrant box 分享和使用 分享本教程的vagrantbox和部分配置 总结 阅读全文
posted @ 2018-11-17 19:29
sfornt
阅读(777)
评论(0)
推荐(0)
摘要:
转载请注明文章出处:https://tlanyan.me/windows co... 准备工作 https://github.com/Microsoft/...下载PHP SDK(在右边的“clone or download”点击,选择下方的“download zip”); https://wind 阅读全文
posted @ 2018-11-17 19:27
sfornt
阅读(1987)
评论(0)
推荐(0)
摘要:
0 索引 1 概述 2 索引扫描排序和文件排序简介 3 索引扫描排序执行过程分析 4 文件排序 5 补充说明 6 参考资料 1 概述 MySQL有两种方式可以实现ORDER BY: 1.通过索引扫描生成有序的结果 2.使用文件排序(filesort) 围绕着这两种排序方式,我们试着理解一下ORDER 阅读全文
posted @ 2018-11-17 19:25
sfornt
阅读(5075)
评论(0)
推荐(1)
摘要:
1.设置时间脚本执行时间 2.设置最大执行内存 3.设置与客户机断开是否会终止脚本的执行,直至有输出任务为止 4.设置默认时区与获取默认时区 5.设置跨域访问限制 crossdomain.xml跨域文件 6.设置报错信息 原文地址:https://segmentfault.com/a/1190000 阅读全文
posted @ 2018-11-17 19:24
sfornt
阅读(242)
评论(0)
推荐(0)
摘要:
request 只用POST,只封装了POST,等有用到GET再重写,接口用的ThinkPHP5.0 主要代码 前端js使用 原文地址:https://segmentfault.com/a/1190000015996526 阅读全文
posted @ 2018-11-17 19:23
sfornt
阅读(913)
评论(0)
推荐(0)
摘要:
在控制器中执行事务的时候,一般的代码如下: 于是我在想,这个代码结构,只有//一些业务代码 这一部分是不一样,却要重复很多遍,这一不是很冗余吗? 而且 不!好!看!,于是我试着寻找解决方法,一开始在stackflow找到一个类似的提问,有方案是在model里做封装,但是这样做有一定问题,如产生嵌套事 阅读全文
posted @ 2018-11-17 18:16
sfornt
阅读(708)
评论(0)
推荐(0)
摘要:
二、选择排序 原理: 在一列数字中,选出最小数与第一个位置的数交换。然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。(以下都是升序排列,即从小到大排列) 举例说明: $arr = array(6, 3, 8, 2, 9, 1); 第一轮: 第一次比较, 阅读全文
posted @ 2018-11-17 18:15
sfornt
阅读(317)
评论(0)
推荐(0)
摘要:
原理:找到当前数组中的任意一个元素(一般选择第一个元素),作为标准,新建两个空数组left、rignt,遍历整个数组元素,如果遍历到的元素比当前的元素小就放到数组left,比当前的元素大放到rignt,然后再对新数组进行同样的操作。 递归:递归是一种函数调用自身的机制。递归必须要有边界条件,也就是递 阅读全文
posted @ 2018-11-17 18:14
sfornt
阅读(289)
评论(0)
推荐(0)
摘要:
通过新浪微博API,生成短链接,支持一次性转多个长链接 什么是短链接 短链接,通俗来说,就是将长的URL网址,通过程序计算等方式,转换为简短的网址字符串。 短链接服务 国内各大微博都推出了自己的短链接服务。例如新浪微博、腾讯微博等。 为什么选用新浪微博API 新浪微博短链接API是开放的 新浪微博短 阅读全文
posted @ 2018-11-17 18:13
sfornt
阅读(5765)
评论(1)
推荐(0)
摘要:
前言 虽然程序员无时无刻都在造轮子,但造轮子也有效率之分,用好轮子才能造出好“🚗” guzzlehttp/guzzle composer require guzzlehttp/guzzle 你可以用guzzlehttp完全取代curl,file_get_content,fopen等函数。这个扩展包 阅读全文
posted @ 2018-11-17 18:12
sfornt
阅读(259)
评论(0)
推荐(0)
摘要:
TP SWOOLE 目前,TP5.1官方已经提供了think swoole2.0,集成程度以前优雅很多,不过5.0的集成方式确实有些鸡肋。所以看了下2.0,为5.0开发了一个扩展包,可以采用composer下载 开发之前,需要先熟悉TP5.0的生命周期,不然就无从下手了。 由于TP主要在Apache 阅读全文
posted @ 2018-11-17 18:11
sfornt
阅读(2268)
评论(0)
推荐(0)
摘要:
感觉已经好久没写程序了,最近这段时间,一方面是学习了python,然后折腾了scrapy框架,用python写了下守护进程程序监听任务以及用redis做队列任务通信,并开进程来处理爬虫任务。以上这些其实没啥好说的,就是顺带提一下。另外就是最近编写segmentfault的讲堂小程序,算起来,自小程序 阅读全文
posted @ 2018-11-17 18:10
sfornt
阅读(192)
评论(0)
推荐(0)
摘要:
背景介绍 公司需要实现X分钟内每隔Y秒轮训某个接口,Linux自带的crontab貌似只精确到分钟,虽然可以到精确到秒,但是并不满足需求。 选型 公司项目都是 基于 Laravel 框架,所以这个没得选。守护进程用的 supervisor,看看这个家伙能不能满足我们的需求 代码 进程守护 上面是su 阅读全文
posted @ 2018-11-17 18:09
sfornt
阅读(2386)
评论(0)
推荐(0)
摘要:
前言 之前我写过一篇如何少写PHP "烂"代码 https://segmentfault.com/a/11...感觉很多新人对此不太理解。今天以打卡功能为例,去讲解其中的奥秘。那篇文章讲过代码开发的过程中分几种类型。 增删改的需求 查的需求 经过多次实际开发验证后,发现Repository完全是多次 阅读全文
posted @ 2018-11-17 18:08
sfornt
阅读(170)
评论(0)
推荐(0)
摘要:
介绍 LEMP 栈是用来开发动态网页和web 应用程序的一系列软件集合,LEMP描述的是Linux操作系统,Nginx web 服务器,以及后端数据存储MySQL/MariaDB数据库和服务器端动态脚本语言PHP. 在此教程中,我们将会演示如何在Ubuntu 16.04 服务器中安装一个完整的LEM 阅读全文
posted @ 2018-11-17 18:07
sfornt
阅读(296)
评论(0)
推荐(0)
摘要:
很多时候,我们的网站上传图片时并没有根据内容进行文件夹分类,甚至会直接存储到阿里云的OSS或是七牛云等云存储上。这样,当我们需要打包图片时,就需要从数据库找寻分类图片,通过CURL进行下载。我最近刚刚完成了一个这样的任务,觉得会比较常用,就把程序放到了github上分享给大家,希望大家能够喜欢。 d 阅读全文
posted @ 2018-11-17 18:06
sfornt
阅读(686)
评论(0)
推荐(0)
摘要:
这个话题老生长谈了,在面试中必然考核的能力中,我个人认为解决问题能力是排第一位的,比学习能力优先级更高。解决问题的能力既能看出程序员的思维能力,应变能力,探索能力等,又可以看出他的经验。如果解决问题能力不佳是无法通过面试的。 这里举个例子,假如我执行了一个PHP的脚本,如php test.php,预 阅读全文
posted @ 2018-11-17 18:04
sfornt
阅读(160)
评论(0)
推荐(0)
摘要:
可能你并不清楚 Docker 是什么,更不了解 Laradock是什么,送上语句自己特别喜欢的一句话 Use Docker First And Learn About It Later 大概意思就是 先去使用它,然后再去学习它, 要求 Git Docker >= 1.12 附带一个安装参考教程 阅读全文
posted @ 2018-11-17 18:03
sfornt
阅读(634)
评论(0)
推荐(0)
摘要:
前言:我自己用此类回调函数,来替代 foreach 纯粹是用为代码的简洁性,让代码更好看。(我有点代码小洁癖~) 1、array_reduce 当迭代处理一个一维索引数组时,在回调函数内是无法获取到当时元素索引的。所以想要获取时,需得借助一个外部变量。 目的:把 $arr 遍历到 <selec 阅读全文
posted @ 2018-11-17 18:02
sfornt
阅读(2045)
评论(0)
推荐(0)
摘要:
前言 以往写过俩篇文章[积德篇] 如何少写PHP "烂"代码 https://segmentfault.com/a/11...举枪消灭"烂代码"的实战案例 https://segmentfault.com/a/11... 感觉文章中对Action的操作没有一个规范性的调用及编写。特此写了一个lara 阅读全文
posted @ 2018-11-17 18:01
sfornt
阅读(241)
评论(0)
推荐(0)
摘要:
概述 分布式session是实现分布式部署的前提, 当前项目由于历史原因未实现分布式session, 但是由于在kubernets中部署多个pod时, 负载均衡的调用链太长, 导致会话不能保持, 所以迫切需要分布式session. 实现方案 a. 修改配置文件php.ini 直接在PHP中配置, 或 阅读全文
posted @ 2018-11-17 18:00
sfornt
阅读(223)
评论(0)
推荐(0)
摘要:
Laravel实用小功能 1.控制访问次数 laravel5.2的新特性,通过中间件设置throttle根据IP控制访问次数 原理:通过回传三个响应头X RateLimit Limit,X RateLimit Remaining,Retry After实现控制访问次数。 X RateLimit Li 阅读全文
posted @ 2018-11-17 17:59
sfornt
阅读(344)
评论(0)
推荐(0)
摘要:
_initialize()方法是在任何方法执行之前,都要执行的,当然也包括 __construct构造函数。 也就是说如果存在_initialize()函数,调用对象的任何方法都会导致_initialize()函数的自动调用,而__construct()构造函数仅仅在创建对象的时候调用一次,跟其它方 阅读全文
posted @ 2018-11-17 17:58
sfornt
阅读(561)
评论(0)
推荐(0)
摘要:
PHP部分 HTML部分 原文地址:https://segmentfault.com/a/1190000016059276 阅读全文
posted @ 2018-11-17 17:57
sfornt
阅读(386)
评论(0)
推荐(0)
摘要:
一直以为php的数组更节省内存,从来没有测试过,今天因为要读取一个大配置文件作为pool。做了一次测试; 得出结论是 使用对象保存数据更好,花费的内存是数组array的1/4。 测试代码 结果 大概比例 越是复杂的数组,用过同等对象保存,内存小更多 原文地址:https://segmentfault 阅读全文
posted @ 2018-11-17 17:56
sfornt
阅读(915)
评论(0)
推荐(0)
摘要:
协程 “协程”就是用户态的线程 要理解是什么是“用户态的线程”,必然就要先理解什么是“内核态的线程”。 内核态的线程是由操作系统来进行调度的,在切换线程上下文时,要先保存上一个线程的上下文,然后执行下一个线程,当条件满足时,切换回上一个线程,并恢复上下文。 协程也是如此,只不过,用户态的线程不是由操 阅读全文
posted @ 2018-11-17 17:55
sfornt
阅读(834)
评论(0)
推荐(0)
摘要:
数据库的导出 数据库的导入 ps:要在mongodb的安装目录下执行 参数含义 导出 导入 原文地址:https://segmentfault.com/a/1190000016061535 阅读全文
posted @ 2018-11-17 17:51
sfornt
阅读(1179)
评论(0)
推荐(0)
摘要:
我理解的数据结构(一)—— 数组(Array) 首先,我是一个phper,但是毕竟php是一个脚本语言,如果使用脚本语言去理解数据结构具有一定的局限性。因为脚本语言是不需要编译的,如果你的语法写的不错,可能执行起来会要比用一个更好的数据结构来的更快、更高效(在数据量不大的情况下)。而且数据结构是脱离 阅读全文
posted @ 2018-11-17 17:49
sfornt
阅读(556)
评论(0)
推荐(0)
摘要:
swManager_loop 函数 manager 进程管理 manager 进程开启的时候,首先要调用 onManagerStart 回调 添加信号处理函数 swSignal_add,SIGTERM 用于结束 server,只需要 running 设置为 0,manager 会逐个杀死 worke 阅读全文
posted @ 2018-11-17 17:48
sfornt
阅读(459)
评论(0)
推荐(0)
摘要:
堆是什么? 堆是基于树抽象数据类型的一种特殊的数据结构,用于许多算法和数据结构中。一个常见的例子就是优先队列,还有排序算法之一的堆排序。这篇文章我们将讨论堆的属性、不同类型的堆以及堆的常见操作。另外我们还将学习堆排序,并将使用SPL实现堆。 根据定义,堆是一个拥有堆特性的树形数据结构。如果父节点大于 阅读全文
posted @ 2018-11-17 17:47
sfornt
阅读(513)
评论(0)
推荐(0)
摘要:
我理解的数据结构(二)—— 栈(Stack) 一、栈基础 栈是一种线性结构 相比较数组,栈对应的操作是数组的子集 只能从一端添加元素,也只能从同一端取出元素,这一端称为栈顶 栈是一种后进先出的数据结构,LIFO(Last In First Out) 二、栈的应用 Undo操作(撤销) 程序调用所使用 阅读全文
posted @ 2018-11-17 17:40
sfornt
阅读(319)
评论(0)
推荐(0)
摘要:
使用场景 在引用第三方包的时候,对第三方包有改动需求,需要将代码放在自己的仓库;并且自己的其他项目也有需求引用自定义的第三方包;甚至自己会发布修改后的第三方包; 读完本文你讲获得: Git Submodule的基本使用 从本地加载第三方包 从自定义仓库地址获取扩展包 快速创建第三方包 本文是在我自己 阅读全文
posted @ 2018-11-17 17:39
sfornt
阅读(726)
评论(0)
推荐(0)
摘要:
介绍 showdoc是一个适合IT团队的文档工具,阅读本文前需要对showdoc有基本了解 。基本介绍可看:https://www.showdoc.cc/help 对于写API文档这件事,虽然说文本编辑软件或者接口管理软件能在某种程度上提高我们的效率,但我们依然可以试图借助技术的力量,更自动化地生成 阅读全文
posted @ 2018-11-17 17:38
sfornt
阅读(4593)
评论(0)
推荐(0)
摘要:
PHP中的几个随机数生成函数 rand() 基于 libc 的随机种子发生器 mt_rand() 基于 Mersenne Twister 算法返回随机整数。它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍。 random_int() 生成密码安全的伪随机整数 random_by 阅读全文
posted @ 2018-11-17 17:37
sfornt
阅读(1036)
评论(0)
推荐(0)
摘要:
今天在公司实现一个模块功能时写了如下代码: 居然报错, 在编译阶段就通不过了. Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead) 错误信 阅读全文
posted @ 2018-11-17 17:35
sfornt
阅读(943)
评论(0)
推荐(0)
摘要:
实践篇 给定二维数组,根据某个字段排序 如何判断上传文件类型,如:仅允许 jpg 上传 不使用临时变量交换两个变量的值 $a=1; $b=2; => $a=2; $b=1; strtoupper 在转换中文时存在乱码,你如何解决?php echo strtoupper('ab你好c'); We 阅读全文
posted @ 2018-11-17 17:27
sfornt
阅读(258)
评论(0)
推荐(0)
摘要:
我最近被强烈安利了 Jupyter Notebook 这个交互式笔记本。然后试用了它自带的 Python 内核后,这个应用整体给我的感觉很不错,就去搜索了下它所支持的其它内核 Jupyter Kernels。我在下面内容介绍下该应用下如何安装 PHP 内核。 安装步骤 安装 PHP 内核 Jupyt 阅读全文
posted @ 2018-11-17 17:26
sfornt
阅读(856)
评论(0)
推荐(0)
摘要:
1、trait 命名问题。 问题:trait 里定义的方法找不到 解决: 2、你的 opcache 真的关了吗? 在开发过程中,当你修改了代码,可实际上却输出的是改之前的内容。 最近在用 laradock 这个 docker 环境,我在配置里改了 PHP_FPM_INSTALL_OPCACHE=fa 阅读全文
posted @ 2018-11-17 17:25
sfornt
阅读(160)
评论(0)
推荐(0)
摘要:
swManager_start 创建进程流程 task_worker 进程的创建可以分为三个步骤:swServer_create_task_worker 申请所需的内存、swTaskWorker_init 初始化各个属性、swProcessPool_start 创建进程 swServer_creat 阅读全文
posted @ 2018-11-17 17:23
sfornt
阅读(331)
评论(0)
推荐(0)
摘要:
1.连接MongoDB数据库(在已安装php mongodb扩展的前提下) 2.简单统计 原文地址:https://segmentfault.com/a/1190000016113918 阅读全文
posted @ 2018-11-17 17:23
sfornt
阅读(414)
评论(0)
推荐(0)
摘要:
原文地址:https://segmentfault.com/a/1190000016116593 阅读全文
posted @ 2018-11-17 17:21
sfornt
阅读(531)
评论(0)
推荐(0)
摘要:
前言 从https://github.com 上down了一个laravel项目安装到本地环境的时候,其中遇到一些问题,这里梳理并记录下整个流程。 git上下载项目代码,部署laravel项目的时候会有两种方式,一种是只发布除了vendor之外的项目相关的文件,然后运行composer进行vende 阅读全文
posted @ 2018-11-17 13:58
sfornt
阅读(1351)
评论(0)
推荐(0)
摘要:
Laravel hprose 基于 hprose/hprose php 开发的Laravel扩展:laravel hprose 版本要求 安装 或者编辑composer.json 配置 在 config/app.php 注册 ServiceProvider 和 Facade (Laravel 5.5 阅读全文
posted @ 2018-11-17 13:57
sfornt
阅读(604)
评论(0)
推荐(0)
摘要:
我理解的数据结构(三)—— 队列(Queue) 一、队列 队列是一种线性结构 相比数组,队列对应的操作是数组的子集 只能从一端(队尾)添加元素,只能从另一端(队首)取出元素 队列是一种先进先出的数据结构(FIFO) 二、数组队列与循环队列 1. 数组队列 如果你有看过我之前的文章不要小看了数组或者栈 阅读全文
posted @ 2018-11-17 13:55
sfornt
阅读(424)
评论(0)
推荐(0)
摘要:
在做项目的时候,一直对Job和Event有个疑惑。感觉两者是相同的东西,搞不清楚两者的区别在哪里!经过一段时间的琢磨和查找了相关的资料,对Job和Event做了一些总结,以便记忆。 Job Job既可以用作同步,也可以用作异步。如果你想延迟执行一个操作,或者这个过程需要花费一段时间,那么就可以选择用 阅读全文
posted @ 2018-11-17 13:54
sfornt
阅读(1806)
评论(0)
推荐(0)
摘要:
一、编译安装PHP 1. 下载源码包并解压 源码包地址:http://php.net/downloads.php 下载源码包 当前PHP最新本门是7.2.9,下载 php 7.2.9 源码包 解压源码包 解压缩 进入解压缩后的目录,查看解压的文件 2. 编译安装 首先安装PHP编译安装所必须的软件 阅读全文
posted @ 2018-11-17 13:53
sfornt
阅读(2894)
评论(1)
推荐(1)
摘要:
Golang Gin实践 番外 请入门 Makefile 原文地址:Golang Gin实践 番外 请入门 Makefile 前言 含一定复杂度的软件工程,基本上都是先编译 A,再依赖 B,再编译 C...,最后才执行构建 如果每次都人为编排,又或是每新来一个同事就问你项目 D 怎么构建、重新构建需 阅读全文
posted @ 2018-11-17 13:52
sfornt
阅读(516)
评论(0)
推荐(0)
摘要:
创建一个扩展的基本步骤都有哪些。示例中,我们将实现如下功能: <?phpecho say();?> 输出内容: $ php ./test.php$ hello word 在扩展中实现一个say方法,调用say方法后,输出 hello word。 第一步:生成代码 PHP为我们提供了生成基 阅读全文
posted @ 2018-11-17 13:51
sfornt
阅读(200)
评论(0)
推荐(0)
摘要:
参考: https://framework.zend.com/bl...参考: https://laravel.com/docs/5.5/... 第一步:软件的下载和安装 软件1:VirtualBox5.2(122M) 下载日期为2018 08 22,选择版本是5.2.8下载地址: https:// 阅读全文
posted @ 2018-11-17 13:48
sfornt
阅读(639)
评论(0)
推荐(0)
摘要:
单例模式(Singleton Pattern):顾名思义,就是只有一个实例。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 为什么要使用单例模式 1、PHP语言本身的局限性PHP语言是一种解释型的脚本语言,这种运行机制使得每个PHP页面被解释执行后,所 阅读全文
posted @ 2018-11-17 13:47
sfornt
阅读(226)
评论(0)
推荐(0)
摘要:
为什么 为什么要开发积分商城呢? 因为我们之前使用的是兑吧的服务,还不错 但是得知今年(2018)下半年关闭免费版的服务,需要付费购买专业版或旗舰版使用 当然兑吧的工作人员也联系过我们,可以给予优惠价格,商业互吹肯定要说“好的,我们会讨论考虑一下” 如果我们用了兑吧,那你也不会看到这个文章了2333 阅读全文
posted @ 2018-11-17 13:46
sfornt
阅读(1790)
评论(0)
推荐(0)
摘要:
定义 参与角色 抽象类(AbstractClass) 抽象类不仅负责实现模板方法,还负责声明在模板方法中所使用到的抽象方法。 具体类(子类) 该角色负责具体实现抽象类角色中定义的抽象方法。这里实现的方法将会在抽象类角色的模板方法中被调用。 优点 封装不变部分,扩展可变部分 提取公共部分代码,便于维护 阅读全文
posted @ 2018-11-17 13:46
sfornt
阅读(175)
评论(0)
推荐(0)
摘要:
[原文地址:https://blog.ti node.com/blog...] daemon 音标 : ['di:mən] , 中文含义为守护神或精灵的意思 . 其实它还有个意思 : 守护进程 . 守护进程简单地说就是可以脱离终端而在后台运行的进程 . 这在Linux中是非常常见的一种进程 , 比如 阅读全文
posted @ 2018-11-17 13:45
sfornt
阅读(180)
评论(0)
推荐(0)
摘要:
PHP7 从发布到现在已经有快三年的时间了,现在已经发展到 PHP7.2.9 版本了。它的发布给 PHP 带来了很大的性能提升,这主要是得益于 PHP 对 Zend 引擎的深度优化,同时还降低了 PHP 对系统的资源占用。 主要的变化有以下几点: 抽象语法树 在PHP之前的版本中,PHP代码在语法解 阅读全文
posted @ 2018-11-17 13:44
sfornt
阅读(248)
评论(0)
推荐(0)
摘要:
Zookeeper 简单介绍 Apache Zookeeper是开发和维护开源服务器的服务,它能够实现高度可靠的分布式协调。 安装Zookeeper(无需安装) 安装Zookeeper C扩展支持 安装php的zookeeper扩展 启动zookeeper server zookeeper clie 阅读全文
posted @ 2018-11-17 13:43
sfornt
阅读(2374)
评论(0)
推荐(0)
摘要:
控制器代码 模型代码在rules方法中添加如下一行 注意captchaAction这个属性指向我们上面在控制中定义的captcha这个action。 原文地址:https://segmentfault.com/a/1190000016175213 阅读全文
posted @ 2018-11-17 13:42
sfornt
阅读(255)
评论(0)
推荐(0)
摘要:
微信支付的接入,如果不使用成熟的开发包,将是巨大的工作量。 依赖 EasyWechat 先在 laravel 项目中依赖 easywechat 这个包 配置 在 .env 中添加微信支付的 key 配置 如果你需要额外的配置,可以运行 php artisan vendor:publish provi 阅读全文
posted @ 2018-11-17 13:41
sfornt
阅读(475)
评论(0)
推荐(0)
摘要:
1. 安装apache2服务器sudo apt get install apache2 2. 安装php环境 3. 重启服务器 sudo /etc/init.d/apache2 restart 4. rz上传代码到/var/www/html 5. 给showdoc赋权限chmod R 777 sho 阅读全文
posted @ 2018-11-17 13:40
sfornt
阅读(361)
评论(0)
推荐(0)
摘要:
1. 安装nginx服务器sudo apt get install nginx y 2. 启动服务sudo service nginx start 3. 安装php环境 4. 配置nginx 编辑php.conf文件sudo vim /etc/nginx/conf.d/php.conf新增下边内容 阅读全文
posted @ 2018-11-17 13:39
sfornt
阅读(1352)
评论(0)
推荐(0)
摘要:
简介 flickity是一款自适应手机触屏滑动插件,它的API参数很丰富,包括对齐方式、循环滚动、自动播放、是否支持拖动、是否开启分页、是否自适应窗口等。 在线演示及下载 演示地址 下载页面 使用方法 引入文件 html 增加js flickity class到对象. 调用JS 第一种方法 第二种方 阅读全文
posted @ 2018-11-17 13:08
sfornt
阅读(623)
评论(0)
推荐(0)
摘要:
简介 为您的网站和项目提供一步一步的、更好的介绍 Intro.js 目前兼容 Firefox、Chrome 和 IE8,不兼容 IE6 和 IE7,后续版本将会提供更好的兼容。 在线演示及下载 在线演示 下载页面 使用方法 引入文件 如果需要兼容 IE,还必须添加 introjs ie.css: H 阅读全文
posted @ 2018-11-17 13:02
sfornt
阅读(873)
评论(0)
推荐(0)
摘要:
简介 和 WOW.js 一样,scrollReveal.js 也是一款页面滚动显示动画的 JavaScript,能让页面更加有趣,更吸引用户眼球。不同的是 WOW.js 的动画只播放一次,而 scrollReveal.js 的动画可以播放一次或无限次;WOW.js 依赖 animate.css,而 阅读全文
posted @ 2018-11-17 12:55
sfornt
阅读(5511)
评论(0)
推荐(0)
摘要:
简介 这是一款支持移动触摸设备的简洁jQuery图片Lightbox插件。该LightBox插件可以在移动手机和桌面设备中运行,它具有响应式,预加载图片,键盘支持等特点,非常实用。它的特点还有: 响应式设计 触控/触摸友好 提供多项配置 图像预加载 支持 iOS / Android / Window 阅读全文
posted @ 2018-11-17 12:50
sfornt
阅读(435)
评论(0)
推荐(0)
摘要:
插件简介 lightslider是一款轻量级的响应式jQuery幻灯片插件。lightslider幻灯片插件能够支持移动触摸设备,它可以制作为带缩略图的内容幻灯片,或者制作为无限循环的旋转木马。它的特点还有: 下载地址 在线演示 下载地址:http://www.jqhtml.com/5633.htm 阅读全文
posted @ 2018-11-17 12:34
sfornt
阅读(260)
评论(0)
推荐(0)
摘要:
简介 cxCalendar 是基于 jQuery 的日期选择器插件。 它灵活自由,你可以自定义外观,日期的范围,返回的格式等。 版本: jQuery v1.7+ jQuery cxCalendar v1.5.3 下载地址及演示 在线演示地址:http://www.jqhtml.com//wp con 阅读全文
posted @ 2018-11-17 12:33
sfornt
阅读(241)
评论(0)
推荐(0)
摘要:
插件简介 cxSelect 是基于 jQuery 的多级联动菜单插件,适用于省市、商品分类等联动菜单。 列表数据通过 AJAX 获取,也可以自定义,数据内容使用 JSON 格式。 同时兼容 Zepto,方便在移动端使用。 国内省市县数据来源:basecss/cityData 下载及演示 演示地址:h 阅读全文
posted @ 2018-11-17 12:32
sfornt
阅读(1282)
评论(0)
推荐(0)
摘要:
简介 kissui.scrollanim是一款实用的纯JS和CSS3页面滚动动画库插件。通过该插件可以使元素进入浏览器视口的时候,展示指定的CSS3动画效果。 下载地址及演示 在线演示 在线下载 安装 可以通过bower来安装kissui.scrollanim插件。 使用方法 在页面中引入scrol 阅读全文
posted @ 2018-11-17 12:31
sfornt
阅读(588)
评论(0)
推荐(0)
摘要:
简介 Viewer.js 是一款强大的图片查看器 Viewer.js 有以下特点: 支持移动设备触摸事件 支持响应式 支持放大/缩小 支持旋转(类似微博的图片旋转) 支持水平/垂直翻转 支持图片移动 支持键盘 支持全屏幻灯片模式(可做屏保) 支持缩略图 支持标题显示 支持多种自定义事件 Viewer 阅读全文
posted @ 2018-11-17 12:30
sfornt
阅读(3068)
评论(0)
推荐(0)

浙公网安备 33010602011771号