![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php
文章平均质量分 52
菜鸟啊啊啊啊21
这个作者很懒,什么都没留下…
展开
-
后端php过滤富文本的xss,前端显示再还原样式
后端代码$content =htmlspecialchars(remove_xss(trim($request->input('content'))));function remove_xss($val) { $val = preg_replace ( '/([\x00-\x08\x0b-\x0c\x0e-\x19])/', '', $val ); $search = 'abcdefghijklmnopqrstuvwxyz'; $search .= 'ABCDEF.原创 2021-09-09 18:46:17 · 409 阅读 · 0 评论 -
PHP中php.ini、php-fpm和www.conf的配置(转)
根据前文《2015博客升级记(五):CentOS 7.1编译安装PHP7》的configure编译参数设定,安装后的PHP7配置文件所在路径是/usr/local/php7/etc。该目录下会有两个配置文件:php-fpm.conf和php.ini,以及一个文件夹php-fpm.d(包含www.conf文件)。因此,这篇文章主要对这三个PHP配置文件的进行简单说明,具体的配置过程见本文末尾的附录部分。1 配置php.iniphp.ini是php运行核心配置文件:...原创 2021-06-09 17:30:08 · 875 阅读 · 2 评论 -
phpfpm 用socket和tcp区别
1)获取mysql目录whichmysql得到 /usr/bin/mysql然后获取配置项位置/usr/bin/mysql --help | grep -A1 'Default options'2)获取php目录which php获取php配置项位置php -i | grep "Loaded Configuration File"3)获取apache的配置项位置ps -ef | grep 'http'/usr/local/apache2/bin/httpd -..转载 2021-03-23 18:33:50 · 639 阅读 · 0 评论 -
一次php请求过程
1. 搭建环境:(1) 本机虚拟机地址192.168.100.142。虚拟机中启动nginx容器,php-fpm容器,mysql容器,均监听默认的端口;(2) nginx容器配置文件中通过proxy_pass将php请求转发到php-fpm监听的9000端口;(3) 为实验项目配置域名my.test.com,项目目录设定为/{rootPath}/yii/frontend/web(这是一个yii-advanced项目),并配置rewrite将访问重定向到项目目录下的index.php;(4)转载 2021-03-05 11:03:04 · 267 阅读 · 1 评论 -
sql优化
此处跟大家聊一些常用的 SQL 语句优化方案,以上的俩个工具要好好的利用,辅助我们进行打怪: ①禁止使用 select *,需要什么字段查询什么字段。 ②where 字段设置索引。 ③group by、order by 字段设置索引。 ④舍弃 offset,limit 分页,使用延迟关联来实现分页(数据量不大时可不用)。 ⑤写分页时当 count 为 0 时,直接返回避免执行分页语句。 ⑥利用覆盖索引进行查询避免回表。 ⑦建立复合索引时区分度原创 2021-03-04 15:43:58 · 103 阅读 · 2 评论 -
windows10 php7安装mongodb 扩展
系统环境:win10家庭版Phpstudy2016 php71. 打开phpinfo 查看 nts(非线程) 还是 ts (线程),然后查看操作位数注: 86 等于 32 位 ,和你的windows系统64 or 32位无关。比如我的:2. 下载对应的版本的php_mongodb.dll 文件下载链接:https://pecl.php.net/package/mongodb/1.2.9/windows3. 把文件解压出来 php_mongodb.dll 文件复制到php安装目..原创 2021-02-24 19:03:22 · 203 阅读 · 0 评论 -
php做微信扫码登录,验证手机号
//微信登录public function wx(){ $AppID = 'wxa2c7aa8411eb5'; // $AppSecret = 'af3b468aef0010fb6e2064bbb028'; $callback = 'https://www.zhixiaoya.com/open/callback'; //回调地址 //微信登录 login.php session_start(); //-------生成唯一随机串防CSR.原创 2020-12-04 15:16:07 · 478 阅读 · 0 评论 -
ueditor跨域上传,虽然图片上传成功,但是提示上传错误,图片不展示的解决方法
UEditor 介绍 UEditor 是由百度「FEX前端研发团队」开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码。1:下载ueditor下来,放在vue项目中的static文件夹下(将php文件夹去除,php文件放置位置下面说明)2:将php文件放到php接口项目内3:修改配置文件:(1):修改ueditor.config.js配置文件// 这里是配置Ueditor内部进行文件请求时的静态文件...原创 2020-11-23 18:34:40 · 2278 阅读 · 1 评论 -
php curl模拟post请求和提交多维数组的示例代码
下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下:? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php $uri = "http://www.cnblogs.com/test.php";//这里换成自己的服务器的地址 // 参数数组 $dat转载 2020-09-16 12:03:22 · 199 阅读 · 0 评论 -
PHP输出的关闭微信浏览器的一段JS代码
做项目需要扫码以后,关闭微信弹出来的页面,那么用如下代码,php直接输出到页面PHP输入的关闭微信浏览器的一段JS代码IOS的没有测试 安卓测试无误找了好多地方 连微信好多官方的测试都找了 最终还是找了可以使用的 PHP版本 echo "<script>WeixinJSBridge.call('closeWindow');</script>"; echo "<script>document.addEventListener('Weix...原创 2020-09-10 20:02:43 · 272 阅读 · 0 评论 -
php判断 二维数组中 是否 存在某个一维数组
$arrs = array ( array ( '286', '127.0.0.1' ), array ( '287', '127.0.0.1' ), array ( '288', '127.0.0.1' ), .原创 2020-07-31 17:31:16 · 980 阅读 · 0 评论 -
php 检测域名是否解析
//检测网站是否能访问function httpcodeCheck($url){ $ch = curl_init(); $timeout =3000; curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_SSL_.原创 2020-07-30 18:23:38 · 852 阅读 · 0 评论 -
php json_encode()不转义中文字符 和 斜杠“/“
php格式化json的函数json_encode($value,$options)其中有2个比较常用到的参数JSON_UNESCAPED_UNICODE(中文不转为unicode ,对应的数字 256)JSON_UNESCAPED_SLASHES (不转义斜杠,对应的数字 64)通常json_encode只能传入一个常量,如果同时使用2个常量怎么办?JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 320使用方法:json_e..原创 2020-07-21 15:01:58 · 874 阅读 · 0 评论 -
PHP+jQuery.photoClip.js支持手势的图片裁剪上传实例
//这个是插件选择图片以后初始化代码,将上传的图片转为base64的字符串,传递给后端$(function(){ //document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false); var clipArea = new bjj.PhotoClip("#clipArea2", { size: [408, 272],// 截取框的宽和高组成的数组。默认值为[26.原创 2020-07-14 16:02:57 · 201 阅读 · 0 评论 -
tp3.2设置404页面
项目需要设置404页面,我首先想到的方法是nginx设置404页面,但是我们服务器是多站点,几个域名用一个nginx.conf配置文件。我百度了好多,说在主配置文件里面加上proxy_intercept_errors: on;然后在子配置域名的文件写上server { ... ... ... error_page 404 /404.html; location = /404.html { root /etc/nginx/error; } }但是我在我本地的nginx配置,不行,但是.原创 2020-06-30 16:58:16 · 557 阅读 · 0 评论 -
tp5中的where与whereor同时使用
1.$data = db('table')->where(function($query) { $query->where('key1', value)->whereor('key1',value1);})->where(['key2'=>value2,'key3'=>value3])->field('key4')->find();生成的sql语句为:find key4 FROM `table` WHERE ( `key1` = 'va...原创 2020-06-21 23:07:34 · 957 阅读 · 0 评论 -
apache的.htaccess文件同时实现HTTPS跳转及伪静态去掉index.php
我希望可以http访问可以跳转到https上,同时去掉访问网站时出现的index.php访问http://www.域名.com/index.php/1.html可以直接跳转到https://www.域名.com/1.html实现方式:RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule (.*) https://%{SERVER_NAME}/$1 [R,L]RewriteCond %{REQUEST_FILENAME} !-fRewri..转载 2020-05-29 22:29:44 · 552 阅读 · 0 评论 -
phpexcel导出的数据,缺失一部分。emoji导致excel数据丢失一部分
前提:之前站点的发送邮件里面的excel附件一直正常,数据结果,但是突然就数据一部分缺失。因为是跨数据库复制表,生成的心数据,所以我先检查是不是复制表的时候出错了。于是我是看了,复制的数据表,查询以后看到,数据没有缺失,那么不是数据库复制表的时候出现的问题。然后我又在代码里面打印了输出到excel的数据,打印看到的数据也没有缺失。这个有点问题了。那就是写进excel的时候出了问题。我首先去掉制表符之类的,因为发送的内容里面有微博的数据,可能是有制表符,换行符之类的,导致数据生成的有问题,替换以后还发现有原创 2020-05-21 17:37:19 · 971 阅读 · 0 评论 -
百度统计代码,安装正确,但是统计不到数据、百度统计安装好了,但是统计无法显示
有时候为了禁止自己的网页发送refer信息,经常会用到这个属性,该属性禁止了header发送页面相关信息,虽然可以阻止一些攻击以及绕过图片防盗链的效果但是也会造成一定的问题,比如在后台中使用了该标签,会导致js和php的一些跳转出现问题,比如js的history.back()方法将找不到上一个页面,因为被禁止referrer了,php的$_[‘HTTP_REFERRER’] 也同样为空值同时该属性会导致一些第三方的统计代码失效,比如cnzz,百度统计,解决方法是使用iframe包裹一层,用一个单独的原创 2020-05-21 16:37:09 · 2228 阅读 · 0 评论 -
百度的sitemap索引文件提示格式错误
我一共写了两个索引文件,一个手机站,一个pc站的,但是手机站的。手机站和pc就域名不一样,其余的一样。然后手机站的索引文件可以,但是pc的报错,格式错误。然后检查也没发现格式错误什么的。后来百度查了下,说阿里云服务上的域名导致什么的,还有说手动更新一下就好了。最后手动更新,就可以了。过了8天才抓取成功。...原创 2020-05-20 10:52:31 · 623 阅读 · 0 评论 -
phpstudy8的域名配置
1、我一个项目是PHP5.6版本的,另一个是php7.2的版本。现在下载了一个最新的phpstudy的8.1版本。这样我不需要跟之前2018版本的phpstudy来回切换php版本。2、配置php5.6版本的域名过程这样就配置好了5.6版本的域名3、另一个是laravel框架6.0,需要php7.2以上的版本。所以再配置7.2版本的域名这个多一个步骤,就是修改vhost.conf配置点击那个laravelreport3的配置再location里面加上...原创 2020-05-11 20:56:25 · 1004 阅读 · 0 评论 -
给文章里面的外链a标签添加nofollow
$html为文章内容,处理了网站内部的a链接不添加nofollow,外部的a链接添加nofollowfunction webOutUrlDispose($html){ $host = [$_SERVER['HTTP_HOST']];//站点host preg_match_all('/href="(.*?)"/', $html, $matches); for ($...原创 2020-05-06 15:11:40 · 771 阅读 · 0 评论 -
tp发送邮件代码
/** * @todo:发送邮件 * @param $sjr * @param $csr * @param $subject * @param $body * @param string $excelPath * @param string $pdfPath * @return bool * @th...原创 2020-04-14 11:11:47 · 221 阅读 · 0 评论 -
TP3.2 图片上传及缩略图
基于TP自带的上传文件的类, Think/Upload.class.php下面是上传的具体方法/** * 图片上传处理 * @param [String] $path [保存文件夹名称] * @param [String] $thumbWidth [缩略图宽度] * @param [String] $thumbHeight [缩略图高度] * @return [Array]...转载 2020-04-09 15:38:38 · 639 阅读 · 0 评论 -
微信小程序rich-text富文本图片不展示、宽度超出
小程序里面的请求连接地址必须是绝对路径,然而平时我们存的地址都是相对路径,那么就会存在在web端正常用的图片地址,到了小程序不显示,那么需要对文件处理一下了。背景:本地做微信小程序项目练习,有关rich-text遇到了以下问题。问题:1.产品详情页中富文本编辑器中的图片无法展示?解决:<rich-text nodes="{{conte...转载 2020-03-09 17:35:30 · 1930 阅读 · 0 评论 -
laravel使用phpexcel发送邮件,附件excel
1、首先引入phpexcel类库,具体方法看我上一篇博客https://blog.csdn.net/qq422431474/article/details/1046533432、然后就是使用PHPexcel3、实例化phpexcel4、生成excel并且保存到服务器5、发送excel...原创 2020-03-04 14:48:57 · 371 阅读 · 0 评论 -
laravel引入第三方类库
一、首先在项目根目录下app目录中新建一个文件夹命名为Lib(自定义名称)。二、如果您引入第三方库多的话可以在Lib下再新建几个目录,由于我只引入了一个类,这里没有新建文件夹。(根据引入类的多少自己定义)三、找到项目根目录下的composer.json文件,可以使用ctrl+f 快速找到"autoload"字样,如下图:四、将第三方类的路劲写入autoload下的clas...原创 2020-03-04 14:45:00 · 766 阅读 · 0 评论 -
用excel导入navcait里面中文乱码或者英文乱码,csv导入数据库,数据丢失一部分
项目有个需求,需要导入发布者数据库大概4w多条数据。里面有个字段是发布者信息的描述,这个字段为text文本,按照以往思维,直接用excel导入到数据库,我用的软件是navcait。但是发现导入进去以后,部分简介是乱码的。然后百度了一下,就发现将excel转为csv格式,然后再设置csv文件的编码格式,为utf8就行。试了一下这种方法,发现乱码问题解决了,但是数据丢失了一部分。可能是因...原创 2020-03-02 11:52:05 · 316 阅读 · 0 评论 -
Navicat导入excel到mysql数据库出现中文乱码。或者英文字母乱码,或者导入的长文本不全
1.问题描述:excel文件中的数据是从另外一个数据导出的,excel中没有乱码,但是用navicat导入到我本地mysql数据库出现中文乱码2.解决方法:首先将excel保存为csv格式,然后用系统记事本打开csv文件,选择另存为,编码选择为UTF-8,点击保存覆盖掉原文件,然后再 导入,乱码问题解决了————————————————版权声明:本文为C...原创 2020-03-01 10:42:44 · 1507 阅读 · 0 评论 -
解决 PHPExcel 长数字串显示为科学计数[转]
今天项目中有个需求,需要导出uid,但是之前没问题,昨天新增了一批数据,今天发现数据不对。后来发现如果导出的数据为数值型,那么如果这个数值的长度超过15位的话,第16/17位等等都默认为0。但是用这种方法,如果数字长度超过15位,则15为之后的都会变成0,原因如下:excel最多支持的数值型数据的长度是15位。当数据长度到过15位时,从第16位开始,后面的数字全部被默认修改为0。...原创 2020-02-25 12:00:45 · 405 阅读 · 0 评论 -
用navcait 导入excel数据不全。excel向navcait导入数据丢失,只导入了一部分
不知道是什么原因,navcait里面的导入向导只能导入一万多条数据,但是我的excel里面有70w条数据,那么解决方案是:将excel文件转为csv文件然后变成了csv文件,但是数据导入的时候,发现乱码。然后我再用notepad++文件,打开这个csv文件,然后转为utf-8的编码格式,然后再保存,或者你直接将,那个csv里面的几十万条数据复制粘贴出来,转为txt文件。然后...原创 2020-01-03 15:52:13 · 3251 阅读 · 0 评论 -
MYSQL分页limit速度太慢的优化方法
在mysql中limit可以实现快速分页,但是如果数据到了几百万时我们的limit必须优化才能有效的合理的实现分页了,否则可能卡死你的服务器当一个表数据有几百万的数据的时候成了问题!如 select * from table limit 0,10 这个没有问题 当 limit 200000,10 的时候数据读取就很慢,可以按照一下方法解决第一页会很快PERCON...原创 2019-12-25 22:18:54 · 139 阅读 · 0 评论 -
array_merge合并数组返回null的一个坑
合并数组$arr1 + $arr2 和array_merge($arr1,$arr2);1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖)2)键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉,但array_merge()此时会...原创 2019-12-23 15:01:38 · 213 阅读 · 0 评论 -
单双引号与双引号之间的变量解析情况
/*双引号可以解析变量 双引号包含单引号--在双引号之间的'$a'看做了一个整体*/$a = 'Hello World!';echo "'$a'";输入结果 'Hello World'/*单引号不可以解析变量 单引号包含双引号--在单引号之间的"$d"看做了一个整体*/$d = '你好,世界!';echo '"$d"';输入结果 "$d"...原创 2019-11-26 09:50:57 · 544 阅读 · 0 评论 -
如何理解PHP中抽象类和抽象方法?(附代码)
今天在这里和大家谈谈关于PHP面向对象中抽象类和抽象方法的内容,简单的来说,PHP中抽象类是一种不能被实例化的类,只能作为其他类的父类来使用,抽象方法则不能带方法体,下面我们就来看看具体的示例。面向对象的抽象方法和抽象类:所有子类必须继承父类的方法,但是继承的时候具有不确定性,必须对父类的方法进行重写,这个时候我们就把这个被重写的方法定义成抽象方法,抽象方法不需要有方法体。这个类也就...转载 2019-11-01 19:08:32 · 168 阅读 · 0 评论 -
微信 {“errcode“: -1000}
最近申请到新的服务号,在获取微信授权操作时,发现没有反应,于是使用微信测试工具进行测试 返回信息主要显示“errcode”: -1000“errmsg”: system" 未知返回状态.通过分析测试,发现是微信公众号——“获取access_token”接口新增IP白名单保护的原因需要添加一下你自己网站服务器的ip地址在白名单,这样你的服务器就可以获取到acce...原创 2019-10-29 10:23:06 · 880 阅读 · 0 评论 -
一个服务器配置多个公众号,多个公众号对应一个服务器
1、业务需求 现在有个需求就是,需要复制我们主公众号的功能,然后弄成一个新的公众号,需要好多个,可能是好多代理。一个代理是一个公众号。2、我是在测试公众号上测试的,配置信息js接口安全域名修改,下边的域名也是 与接口配置信息修改的URL是一个主域名网页授权获取用户基本信息---的url地址配置跟js接口安全域名修改的域名一致。PHP获取当前域名$_...原创 2019-10-14 16:56:25 · 4994 阅读 · 2 评论 -
thinkphp设计模式讲解
一、设计模式简介首先我们来认识一下什么是设计模式:设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。设计模式不是Java的专利,我们用面向对象的方法在PHP里也能很好的使用23种设计模式。那么我们常说的架构、框架和设计模式有什么关系呢?架构是一套体系结构,是项目的整体解决方案;框架是可供复用的半成品软件,是具体程序代码。架构一般会涉及到采用什么样的框架来加速转载 2017-07-25 10:02:48 · 3864 阅读 · 1 评论 -
thinkphp框架加载流程以及原理
总体来说,应用的流程涉及到几个文件:Index.phpThinkPHP.phpThink.class.phpApp.class.phpDispatcher.class.phpThinkPHP/Mode/common.phpReadHtmlBehavior.class.phpRoute.class.phpHook.class.phpContentReplace转载 2017-07-25 09:52:57 · 2431 阅读 · 1 评论 -
PHP代码优化的53个细节
用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row['id'] 的速度是$row转载 2017-08-16 12:26:30 · 250 阅读 · 0 评论