![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
文章平均质量分 50
kangsf1989
这个作者很懒,什么都没留下…
展开
-
代码审计PHP总结
相比与.net站,php师傅们要熟悉的多。但大多数漏洞万变不离其宗,即函数和变量配合以一些关键字,代码审计想不出洞都很难。转载 2024-06-04 13:45:37 · 17 阅读 · 0 评论 -
PHP打压缩包无中文文件
问题:测试环境下载压缩包,解压后是空文件,而是本地正常。测试环境下载解压后测试环境:docker+php本地环境解压后显示Homestead集成环境问题分析查找过程首先去断点打印,压缩包外的需要打印的文件内容及其路径是否正确,并在服务器上查对对应位置是否有文件。代码如下:输出内容如下初次断定以为是相对路径所导致,修改成绝对路径后再次进行尝试,后进行下载,无效进行推翻。其次,在压缩代码中进行断点常试。代码如下。打印结果如...原创 2022-04-22 10:27:00 · 273 阅读 · 0 评论 -
PHP下载压缩包,提示损坏或者无法打开
在写PHP下载压缩包的过程中遇到了一个这样子的问题,现总结一下原因,以便下次再到此类似的坑。遇到问题:通过页面进行下载,提示如上图,找到原压缩文件,打下载解压正常。找到下载方法:错误内容:断点确认文件名称和地址,确认无误,后经网络查询,发现输出顺序错误导致,当执行程序执行readfile会打开文件后再给压缩包文件赋值大小header('Content-length:'.$filesize)。这导致了电脑在识别的过程中,无法正确打开文件,所以进行修改正确内容:另外exi原创 2022-04-08 09:50:19 · 973 阅读 · 0 评论 -
php-fpm进程数设置多少合适
在我们做php高并发下的优化的时候,涉及到一个问题,就是fpm进程数设置多少合适,在有的文章中推荐设置为n或者n×2(n为cpu数量)有的文档中推荐按照可用内存/30m (30m为fpm每个进程内存)原创 2021-05-31 15:21:06 · 1916 阅读 · 2 评论 -
百度编辑器UEditor自动保存实现
在使用百度编辑器时,默认有一个自动保存的功能,但是重新刷新页面或者退出当前登陆用户再次进来的时候,不会显示具体内容。从网上找了很多的贴子发现,都是说取消改功能。即:在euditor.config.js中把enableAutoSave: false关闭该功能。怎么好的功能为什么要关闭,于是去查找官方文档http://fex.baidu.com/ueditor/发现。有可以获取草稿箱内容的方法,在本地...原创 2018-06-19 15:36:56 · 5907 阅读 · 1 评论 -
PHP基础知识总结
原文:http://www.runoob.com/w3cnote/php-basic-summary.html原创 2018-06-20 17:20:35 · 813 阅读 · 0 评论 -
PHP常见报错解析
原文连接:https://www.cnblogs.com/shark1100913/p/5329544.htmlPHP常见报错解析 {错误类型}: {错误原因} in {错误文件} on {错误行数} 说明了在哪个文件的哪一行中因何种原因出现了何种错误。 常见的错误类型一般有下面几种: Parse error(解析错误)一般都伴随着Syntax errors(句法错误)...转载 2018-07-19 13:44:07 · 570 阅读 · 0 评论 -
php面向对象编程5大原则+6大设计模式
一、面向对象编程的6大设计原则单一职责原则——类要职责单一,一个类只需要做好一件事情。里氏替换原则——子类可以扩展父类的功能,但不能改变父类原有的功能(可以实现父类的抽象方法和增加自己特有的方法,不要覆盖父类的非抽象方法)。依赖倒置原则——-面向接口编程:只需关心接口,不需要关心实现。 接口隔离原则——-建立单一接口,尽量细化接口,接口中的方法尽量少。低耦合高内聚。最少知识原则——-一...原创 2018-11-13 20:53:40 · 316 阅读 · 0 评论 -
packagist.phpcomposer.com原因导致的报错
由于packagist更改导致的报错。例如:可以把composer.json中修改一下"packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com"}修改成"packagist": { "type": "composer&quo原创 2018-10-08 16:11:30 · 8244 阅读 · 0 评论 -
laravel目录结构介绍
文件夹名称简介app应用程序的业务逻辑代码存放文件夹app/Console存放自定义 Artisan 命令文件app/Http/Controllers存放控制器文件app/Http/Middleware存放「中间件」文件bootstrap框架启动与自动加载设置相关的文件composer.json应用依赖的扩展包composer.lock扩展包列表,确保这个应用的副本使用相同版本的扩展包config...原创 2018-06-15 10:30:10 · 923 阅读 · 0 评论 -
php支持多图上传类
原文:https://www.cnblogs.com/woider/p/5847821.html原创 2018-06-14 14:27:12 · 661 阅读 · 0 评论 -
Flightphp 中文版教程
github : https://github.com/mikecao/flight中文介绍:https://www.jianshu.com/p/06e2c20bc0dc原创 2018-05-31 15:41:23 · 1357 阅读 · 0 评论 -
php伪类型与变量
本文档中使用的伪类型与变量伪类型(pseudo-types) 是 PHP 文档里用于指示参数可以使用的类型和值。 请注意,它们不是 PHP 语言里原生类型。 所以不能把伪类型用于自定义函数里的类型约束(typehint)。mixedmixed 说明一个参数可以接受多种不同的(但不一定是所有的)类型。例如 gettype() 可以接受所有的 PHP 类型,str_replace() 可以接受字符串和...原创 2018-06-21 13:58:05 · 235 阅读 · 0 评论 -
laravel where orwhere的写法
$goodsShow = Goods::where('cate_id','=',$cate_id) ->where(function($query){ $query->where('status','<','61') ->orWhere(function($query){ $query->...原创 2018-06-12 09:52:39 · 10410 阅读 · 4 评论 -
https 与 http 跳转 referer 的问题
Http协议头中的Referer主要用来让服务器判断来源页面, 即用户是从哪个页面来的。获取方式:$_SERVER[ 'HTTP_REFERER' ]在https->http跳转中,refer是不建议被传递的,而https->https和http->https则没有这个问题。例如我获取二维码接口地址:正确的效果https://qrcode.artron.net/?text=htt...原创 2018-05-24 11:41:45 · 5368 阅读 · 0 评论 -
Laravel集成环境laragon在Windows下报错 NODE_ENV
报错:'NODE_ENV' 不是内部或外部命令,也不是可运行的程序或批处理文件。解决方案:安装cross-env:npm install cross-env --save-dev原创 2018-05-28 14:47:32 · 549 阅读 · 0 评论 -
Symfony的Console组件的简单使用
Symfony的Console组件的简单使用。 发布时间:2018-08-28 来源:网络 上传者:用户 关键字: 发表文章 摘要:1.进入项目路径:cd~/web/project/2.安装Console组件:composerrequiresymfony/console@stable3.创建自己的代码目录:mkdir-psrc/Mycmd#创建自己的代码目录4.注册命名空间:编辑co...转载 2018-10-18 20:57:47 · 3265 阅读 · 0 评论 -
PHPExcel导入、导出总结
原文 :https://blog.csdn.net/u014236259/article/details/60601767首先需要去官网https://github.com/PHPOffice/PHPExcel/下载PHPExcel,下载后只需要Classes目录下的文件即可。1、PHPExcel导出方法实现过程/** * 数据导出 * @param array $title ...转载 2018-10-09 15:22:42 · 136 阅读 · 0 评论 -
PHP的学习--连接MySQL的三种方式
先mock一下数据,可以执行一下sql。/*创建数据库*/CREATE DATABASE IF NOT EXISTS `test`;/*选择数据库*/USE `test`;/*创建表*/CREATE TABLE IF NOT EXISTS `user` ( name varchar(50), age int);/*插入测试数据*/INSERT INT...转载 2018-10-09 17:21:49 · 142 阅读 · 0 评论 -
匹配URL中年份并替换指定字符串
需求:https://img1.artron.net/auction/2018/art513829/d/art5138291001.jpg 替换成https://img1.artron.net/auction/poly/art513829/d/art5138291001.jpg解决方案:一、$a = "https://img1.artron.net/auction/2018...原创 2019-07-30 11:46:25 · 322 阅读 · 0 评论 -
H5 返回上一步 报错 刷新正常
在做项目的时候,遇到一个这样子的问题。场景:H5页面,FROM表单,FORM单击搜索,先搜索没有的,再次搜索正常的。Android:返回上一步,报错。刷新正常。IOS:正常查错过程:1、查看程序报错日志,无报错信息,再次尝试无果。2、清除缓冲,再次常无果。解决方案:1、FORM 提交尝试修改成GET方式,尝试正常。2、在网上搜索相关解决方案,发现在hea...原创 2019-07-29 11:33:25 · 429 阅读 · 0 评论 -
laravel怎么获取到常用路径
app_path()app_path函数返回app目录的绝对路径:$path= app_path();你还可以使用app_path函数为相对于app目录的给定文件生成绝对路径:$path= app_path('Http/Controllers/Controller.php');base_path()base_path函数返回项目根目录的绝对路径:$path= ...原创 2019-05-08 10:19:04 · 492 阅读 · 0 评论 -
php 删除指定止录所有文件
$dirPath = './upload.net/aa';private function deldir($dirPath){ //如果是目录则继续 if (is_dir($dirPath)) { //扫描一个文件夹内的所有文件夹和文件并返回数组 $p = scandir($dirPath); foreach ($p as $v...原创 2019-04-17 15:22:29 · 133 阅读 · 0 评论 -
laravel sql 调试
在项目app/Helper/helper.php中添加以下代码即可/*** sql 调试*/if (!function_exists('get_sql')) { function get_sql() { DB::listen(function ($sql) { dump($sql); $singleSql...原创 2019-03-05 16:47:37 · 489 阅读 · 0 评论 -
PHP执行原理
PHP的所有应用程序都是通过WEB服务器(如IIS,Nginx或Apache)和PHP引擎程序解释执行完成的,工作过程:(1)当用户在浏览器地址中输入要访问的PHP页面文件名,然后触发一个web请求,并将请求传送到WEB服务器。(2)WEB服务器接受这个请求,并根据其后缀进行判断是一个PHP请求,WEB服务器从硬盘或内存中调出用户要访问的PHP应用程序,并将其发送给PHP引擎程序。(3)PH...原创 2019-01-10 09:08:04 · 762 阅读 · 0 评论 -
php运行机制
php组成主要简化分为3大块,php内核,Zend引擎,扩展层;PHP内核负责处理请求、文件流、错误等相关信息;Zend引擎负责将源码转换为机器语言,在虚拟机上运行。扩展是一数据函数、类库和流,PHP使用他们来执行一些特定的操作,例如:Mysql扩展连接mysql数据库,当zend执行时,可能会连接若干个扩展进行处理,处理完以后将数据返回来内核,最后将结果输出到SAPI层,最终显示到浏...原创 2019-01-10 09:06:03 · 442 阅读 · 0 评论 -
php生命周期
当我们请求 PHP 进行文件处理的时候,会历经以下 5 个大的阶段的转换:1. 模块初始化阶段(MINIT)在这个阶段 PHP 首先检查 php.ini 文件中定义的扩展模块并对其进行初始化和加载工作,mysql、mbstring、json等等我们需要的功能扩展模块都会在这个阶段完成2. 请求初始化阶段(RINIT)初始化本次脚本请求所需要的变量以及变量值内容符号表,我们熟知的...原创 2019-01-25 15:23:09 · 691 阅读 · 0 评论 -
大数据和高并发的解决方案总结
现在,软件架构变得越来越复杂了,好多技术层出不穷,令人眼花缭乱,解决这个问题呢,就是要把复杂问题简单化,核心就是要把握本质。软件刚开始的时候是为了实现功能,随着信息量和用户的增多,大数据和高并发成了软件设计必须考虑的问题,那么大数据和高并发本质是什么呢?本质很简单,一个是慢,一个是等。两者是相互关联的,因为慢,所以要等,因为等,所以慢,解决了慢,也就解决了等,解决了等,也就解决了慢。关...原创 2018-12-19 14:55:40 · 340 阅读 · 0 评论 -
php7.1 扩展安装memcache 扩展
wget https://github.com/websupport-sk/pecl-memcache/archive/NON_BLOCKING_IO_php7.zipunzip NON_BLOCKING_IO_php7.zipcd pecl-memcache-NON_BLOCKING_IO_php7//usr/local/Cellar/php@7.1/7.1.20/bin/phpize ...原创 2018-11-20 17:30:47 · 1102 阅读 · 0 评论 -
面向对象五大基本原则
以前一直认为程序中的类有使用到封装继承多态就是面向对象设计,其实不然封装,继承,多态只是面向对象的三大特性,但是在设计程序的时候并不是说类的结构使用到了(或是体现出了)这三个特性就是面向对象,其实真正的面向对象设计是要符合下面的五大原则,面向对象的五大基本原则单一职责原则(SRP)开放封闭原则(OCP) 里氏替换原则(LSP) 依赖倒置原则(DIP) 接口隔离原则(ISP)...原创 2018-11-13 20:46:26 · 623 阅读 · 0 评论 -
Laravel 目录说明
原文出自:https://laravel-china.org/courses?rf=25167app应用程序的业务逻辑代码存放文件夹app/Console存放自定义 Artisan 命令文件app/Http/Controllers存放控制器文件app/Http/Middleware存放「中间件」文件bootstrap框架启动与自动加载设置相关的文件composer.json应用依赖的扩展包comp...转载 2018-05-23 17:17:02 · 207 阅读 · 0 评论 -
PHP递归创建文件
原文:http://www.jb51.net/article/74408.htm原创 2018-05-22 11:48:19 · 574 阅读 · 0 评论 -
laravel缓冲cache的使用
一、在控制器中引用:use cache;二、基本方法及使用1、put() 键 值 有效时间(分钟)Cache::put('key1','val1',10);2、add() 若key2不存在,则添加成功 否则,添加失败Cache::add('key2','val2',20);3、forever() 永久保存对象到缓存Cache::forever('key3','val3');4、has() 判断是否...原创 2018-02-25 11:24:57 · 6476 阅读 · 0 评论 -
Laravel5.4使用MongoDB作为默认的日志存储方式
原文转载:http://www.muyesanren.com/2017/09/15/laravel-how-to-store-logging-with-mongodb/转载 2018-03-09 17:05:07 · 615 阅读 · 0 评论 -
laravel 调用mongo报错
报错:Call to undefined method MongoDB\Driver\WriteConcern::isDefault()解决方案:把php mongo扩展升级大于1.9即可。原创 2018-03-09 10:51:51 · 959 阅读 · 0 评论 -
LNMP环境安装
https://www.yiibai.com/nginx/lnmp.html原创 2018-02-28 09:08:32 · 181 阅读 · 0 评论 -
Laravel 发送邮件
http://blog.csdn.net/u011415782/article/details/77800154原创 2018-03-07 15:07:29 · 201 阅读 · 0 评论 -
PHP 获取英文月份相关
echo gmstrftime("%a, %d %b %Y %T %Z",time());//输出:Tue, 01 Apr 2014 16:16:07 GMT原创 2018-02-07 14:26:58 · 1403 阅读 · 0 评论 -
laravel框架——请求实例 之 获取请求数据
路由://获取单个参数Route::get('/request','RequestController@index');//获取路径及urlRoute::get('/request/url','RequestController@getUrl');//获取请求方式Route::get('/request/getmethod','RequestController@getMethod');...原创 2018-02-26 16:56:28 · 4699 阅读 · 0 评论 -
laravel框架——路由
//用例1 get请求Route::get('/hello',function (){ return 'Hello word';});Route::get('/', function () { return view('welcome');});//用例2 postRoute::get('/testPost',function(){ $csrf_token...原创 2018-02-12 10:31:58 · 219 阅读 · 0 评论