PHP
gws813539162
这个作者很懒,什么都没留下…
展开
-
MobileDetect检测包括平板在内的移动设备的类型的工具类
安装composer require mobiledetect/mobiledetectlib使用<?phpnamespace app\index\controller;use Detection\MobileDetect;class Index{ public function index() { $Mobile_Detect = new MobileDetect(); $res = $Mobile_Detect->原创 2021-03-05 14:07:51 · 407 阅读 · 1 评论 -
PHP 网络请求插件 Guzzle
Guzzle是一个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上。Guzzle提供了简单的接口,构建查询语句、POST请求、分流上传下载大文件、使用HTTP cookies、上传JSON数据等等。安装使用Composer安装:composer require guzzlehttp/guzzleGuzzle基本使用<?phpnamespace app\index\controller;use think\facade\Log;use Guzzl原创 2021-03-05 13:40:18 · 367 阅读 · 0 评论 -
php使用faker填充测试数据
Faker描述Faker是一个PHP库,它为您生成假数据。无论您需要引导数据库、创建好看的XML文档、填写持久性以进行压力测试,还是匿名化从生产服务中获取的数据,Faker都是为您准备的。Faker 支持php版本:PHP >= 5.3.3地址:https://github.com/fzaninotto/Faker?from=madewith.cnComposer下载地址:composer require fzaninotto/faker代码实现<?phpnamespace原创 2021-03-04 17:00:10 · 176 阅读 · 1 评论 -
php令牌桶算法实现接口限流
前端每次请求从令牌桶取走令牌,后端匀速向桶内投递令牌,如果前端取到令牌,则说明这次请求有效,否则让前端再次请求或者等待。避免了大量请求下服务器压力过大导致的崩溃问题。令牌桶类:<?php class Token{ private $_max; private $_queue; private $_redis; public function __construct() { try { $this->转载 2020-12-24 18:48:08 · 360 阅读 · 1 评论 -
PHP+Sphinx+MySQL实现全文检索
理论篇sphinx 可以解决 站内搜索的应用场景(用来生成索引数据,为后续的高效搜索做铺垫)sphinx 简介sphinx是一个基于SQL(mysql sqlserver... )的全文检索引擎,它提供了比数据库更加专业的搜索功能,并且sphinx特别为一些脚本语言设计了搜索的API接口吗,比如PHP、Ruby、Python等,同时为MySQL也设计了一个存储引擎插件它是如何与生成索引的?...转载 2020-07-10 07:16:31 · 540 阅读 · 0 评论 -
五十个小技巧提高PHP执行效率,解决三大常见问题
SESSION变量,调用SESSION这个全局变量,往往大家在将值放入SESSION之后,直接就往下接着写自己的代码了,却忘记了SESSION变量会在页面执行完毕之后才会将值放入SESSION中供其他页面使用,这样如果这个页面执行时间过长,其他页面也调用这个SESSION就会等待这个写入SESSION的页面执行完毕之后,再往后执行其他程序,但是我们的程序要的不是这样的效果,因为我们只需要将值写入SESSION执行之后,就已经放在SESSION中了,而不是等待页面执行完毕,从PHP官网也能看到这个SESSIO转载 2020-05-27 17:40:34 · 147 阅读 · 0 评论 -
必学PHP类库/常用PHP类库大全
[JingwenTian]awesome-php [ziadoz]awesome-php 依赖管理( Dependency Management )用于依赖管理的包和框架 Composer/Packagist- 一个包和依赖管理器. Composer Installers- 一个多框架Composer库安装器 pickle- PHP扩展...转载 2020-03-13 17:28:41 · 1255 阅读 · 0 评论 -
查询节假日相关接口
使用curl get方式请求如下接口url实例:检查一个日期是否为节假日 http://www.easybots.cn/api/holiday.php?d=20130101检查多个日期是否为节假日 http://www.easybots.cn/api/holiday.php?d=20130101,20130103,20130105,20130201获取2012年1月份节假日 http:...原创 2019-12-26 10:17:20 · 2199 阅读 · 0 评论 -
关于tp5命令行运行定时脚本相关记录
tp5自带的命令行工具进入项目目录最外层1、创建文件名为abc.php的脚本php think make:command abc2、直接在文件内execute方法里写要执行的脚本内容(可以使用tp自带的数据库等工具类)<?phpnamespace app\command;use think\console\Command;use think\console\...原创 2019-09-10 17:51:33 · 985 阅读 · 0 评论 -
九种跨域请求的解决方案
一、什么是跨域?1. 什么是同源策略及其限制内容?同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。同源策略限制内容有:Cookie、LocalStorage、IndexedDB 等存储性内容 DOM 节点 AJAX 请...转载 2019-08-06 16:38:20 · 207 阅读 · 0 评论 -
配置PHP的session存储在redis中
方法一:修改 php.ini 的设置session.save_handler = redissession.save_path ="tcp://127.0.0.1:6379"配置完重启php方式二:通过 ini_set() 函数设置ini_set("session.save_handler","redis");ini_set("session.save_pa...转载 2019-05-07 17:19:18 · 645 阅读 · 0 评论 -
一种简单的用户信息加密方式-PHP
有时候我们分享推广链接一般会带的用户信息字段,一般有两种方式,1、一种数据库生成用户的推广码,通过推广码来识别属于哪个用户2、直接在链接上带上该用户的id信息,并进行简单的加密这边记录下见过的一张加密方式。加密步骤:<?php//用户信息数组$userInfo = ['uid'=>5,'pro_num'=>'sss'];//1、生成任意n位的...原创 2019-05-14 15:08:02 · 555 阅读 · 0 评论 -
php使用exec函数导入导出数据库
代码:exec("mysqldump -h localhost -uroot -ppassword --default-character-set=utf8 shunfengzhekou>d:/bbb.sql 2>&1", $output, $return_val);exit;注意事项:1)-h和localhost中间要有空格(否则输出会报密码不正确错误)原创 2015-11-18 17:15:25 · 1130 阅读 · 0 评论 -
php 做下载功能需注意项
如果是直接链接到下载文件下载时如:PHPini设置:1、修改上传的最大文件大小upload_max_filesize = 1200Mpost_max_size = 2000Mmemory_limit = 2048M2、修改PHP脚本文件的执行时间。php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.这就导致出现 无法打开网页的情况max_ex原创 2016-02-29 09:44:20 · 275 阅读 · 0 评论 -
将nginx配置成service服务
很多时候nginx安装完后要重启nginx都要执行/usr/local/nginx/sbin/nginx -s reload或者杀掉nginx的进程再重新开启,所以将nginx配置成服务,可以直接执行service start stop等命令将会简单便捷很多接下来我们简单的为它提供一个服务脚本吧!# vim /etc/init.d/nginx新建文件/etc/rc.d/init.转载 2017-05-11 17:07:43 · 1861 阅读 · 0 评论 -
在linux中将php-fpm配置成service
在安装完php后1、设置php-fpm.conf,将;pid = run/php-fpm.pid前面分号去掉2、将解压后的php文件夹下的init.d.php-fpm拷贝到/etc/init.d/php-fpmcp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm3、将解压后的php文件夹下的init.d.php-fpm原创 2017-05-11 17:29:22 · 3991 阅读 · 0 评论 -
laravel解决跨域问题
1、执行composer require barryvdh/laravel-cors 2、kernel.php protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Foundation\Http\Mi...转载 2018-09-06 16:31:29 · 966 阅读 · 0 评论 -
contab+flock实现防止重复执行的定时任务
场景:需要实时处理redis队列消息使用linux中的contab定时任务每隔一分钟执行一次,为防止一分钟后该脚本还没执行完,下个脚本重复执行,使用flock锁的方式crontab -e添加如下内容*/1 * * * * flock -xw 60 /tmp/mytest.lock -c 'php /www/index.php' 独占锁+等待时间60秒是防...原创 2018-10-11 15:38:31 · 893 阅读 · 0 评论 -
composer install遇到需要输入用户名和密码的情况
解决方法:换源:composer config -g repo.packagist composer https://packagist.laravel-china.org/然后继续执行composer install,可用正常使用了(亲测可用)原创 2018-10-18 10:23:36 · 1304 阅读 · 0 评论 -
mysql判断库存写入数据库
电商商品出售时必须判断库存,下面举例了两种写法,写法一是常见的错误写法,并发量大的时候会出现意外,写法2为改进后写法1:beginTranse(开启事务)try{ $result = $dbca->query('select amount from s_store where postID = 12345'); if(result->amount-$qu...转载 2018-10-09 14:30:17 · 654 阅读 · 0 评论 -
查找某个部门下的所有子部门
部门表department字段:id,parent_id(所属上级部门id),name(部门名称),leavel(部门层级,比如最上级的部门为1,他下面的部门为2,以此类推)查找部门(部门id)A的所有子部门实现:1、先查找到部门A的信息取得A部门的层级假设为Bselect * from department where id = 'A';2、查找出层级大于B的所有部...原创 2018-11-01 20:42:38 · 4396 阅读 · 1 评论 -
基于thinkPHP框架使用PHPExcel导出数据
import("Org.Util.PHPExcel"); import("Org.Util.PHPExcel.IOFactory.php"); import("Org.Util.PHPExcel.Style.NumberFormat.php"); //PHPExcel_Style_NumberFormat //导出 h原创 2015-11-23 10:54:42 · 739 阅读 · 0 评论