
php
文章平均质量分 50
dabao87
php
展开
-
PHP读取远程URL出现 file_get_contents(): SSL operation failed with code 1. OpenSSL ...
今天在敲代码测试的时候 file_get_contents() 报错了file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed很奇怪,之前一直没有这个错误,想到前几天刚换了一台新的服务器,环境新搭建的,可能是环境的问题,就将新的服务器原创 2021-06-22 19:17:36 · 2850 阅读 · 3 评论 -
PHP使用CURL配置代理
如果web服务器需要通过代理访问外网,那么php应用中通过curl访问的时候就需要添加代理$curl = curl_init(); // 启动一个CURL会话curl_setopt($curl, CURLOPT_PROXY, "代理IP");curl_setopt($curl, CURLOPT_PROXYPORT, "代理端口");curl_setopt($curl, CURLOPT_PROXYUSERPWD, "代理用户:代理密码");$result=curl_exec($curl);.原创 2021-03-26 15:46:09 · 2589 阅读 · 0 评论 -
php将索引数组转对象
json_encode( (object)$input['imgs'] );转化前:转化后:原创 2020-09-21 18:38:38 · 249 阅读 · 0 评论 -
php截取字符串中指定两个字符中间的部分
方法1:$str = "https://a.m.taobao.com/i592404572191.htm?price=26.9-89&sourceType=item&detailSharePosition=interactBar&sourceType=item&suid=196360d0-e48f-41e1-b265-3e3024c6672e&shareUniqueId=2016960869&ut_sk=1.WpFnOuc%2BOYMDACuqCza43原创 2020-07-24 14:02:08 · 2092 阅读 · 0 评论 -
PHP处理微信小程序昵称带有表情
第一步:在微信小程序的开发过程中,需要用户的授权登录并获取用户的信息,存储到数据库,但是如果用户的头像是Emoji表情的话,是存储不上去的,这是因为之前数据的utf8只能存储3个字节,而 emoji表情有些需要占4个字节。这时就需要我们修改数据库的编码格式了。 首先,我们新建数据库时选择utf8mb4编码,相应的表中字段也设置成utf8mb4编码设置完之后,可以在数据库-->查询-->新建查询里运行一下下边的命令,查看数据库的编码格式是否改成utf8mb4编码SHOW VAR原创 2020-07-10 15:33:00 · 792 阅读 · 0 评论 -
TP5.1引用第三方文件方法
TP5.1引用第三方的文件方法先看文件结构,第三方文件放在了 extend 文件夹中引用方法include "../extend/taobaokeSDK/TopSdk.php";$c = new \TopClient;原创 2020-06-30 18:07:09 · 647 阅读 · 0 评论 -
前后端分离,接口参数传输安全
接口安全问题请求身份是否合法?请求参数是否被篡改?请求是否唯一?AccessKey&SecretKey (开放平台)请求身份为开发者分配AccessKey(开发者标识,确保唯一)和SecretKey(用于接口加密,确保不易被穷举,生成算法不易被猜测)。防止篡改参数签名按照请求参数名的字母升序排列非空请求参数(包含AccessKey),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA;在stringA最后拼接上Secr原创 2020-06-19 14:41:01 · 454 阅读 · 0 评论 -
xml中的 ![CDATA[]] 简介
被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”。 此标记用于xml文档中,我们先来看看使用转义符的情况。我们知道,在xml中,”<”、”>”、”&”等字符是不能直接存入的,否则xml语法检查时会报错,如果想在xml中使用这些符号,必须将其转义为实体,如”<”、”>”、”&”,这样才能保存进xml文档。 在使用程序读取的时候,解..转载 2020-06-05 13:49:59 · 900 阅读 · 0 评论 -
php的JWT使用
登录网站:https://packagist.org/,搜索jwt原创 2020-05-11 10:11:14 · 328 阅读 · 0 评论 -
php抽象类和接口的区别
抽象类和接口的关系:抽象类是一种特殊的类,接口是一种特殊的抽象类抽象类 什么是抽象方法:如果一个类中的方法,没有方法体的方法就是抽象方法(就是一个方法没有使用{},而直接使用分号结束) 例:abstract function test(); //抽象方法 如果一个方法是抽象方法,就必须要用abstract修饰 ...原创 2020-02-27 17:35:34 · 1966 阅读 · 0 评论 -
PHP的header之前不能有输出是什么意思
这个要从 http 协议说起:HTTP 数据包含2大部分: http 头部 http body 内容 <html><head><metaxxx/><title></title></head><body>...原创 2020-02-26 15:54:37 · 503 阅读 · 0 评论 -
PHP试题附答案
1、什么事面向对象?主要特征是什么?面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装、继承、多态。2、SESSION 与 COOKIE的区别是什么,请从协议,产生的原因与作用说明?A、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。B、SESSION存储在服务器端,COOKIE保存在客户端。Ses...原创 2020-02-14 15:22:21 · 3447 阅读 · 0 评论 -
各种场景唤起 App 骚操作
唤起 App 应该是很常见的问题了。我们在开发 H5 的时候,有一些链路上的功能在 H5 不支持,只能去 App 才能完成。比如,下单、支付等功能。那么在更多的场景能够唤起 App 就显得很重要了。几步走 判断浏览器,动态加载对应浏览器的下载逻辑 通过universal link、URL Scheme、a 标签、iframe几种方式找出最适合这个浏览器的唤起方式。 ...原创 2020-02-14 09:47:09 · 374 阅读 · 0 评论 -
http请求的基本过程是什么?
http请求的基本过程是连接、请求、应答、关闭连接。连接:当我们输入一个链接的时候,首先要建立一个socket连接,因为socket是通过ip和端口建立的请求:连接成功建立后,开始向web服务器发送请求应答:web服务器收到这个请求,进行处理关闭:当应答结束后,Web浏览器与Web服务器必须断开,以保证其它Web浏览器能够与Web服务器建立连接。...原创 2020-02-13 18:25:04 · 696 阅读 · 0 评论 -
postman用post方式发送xml数据
发送xml数据PHP的接收方式是$fileContent = file_get_contents("php://input");$xmlResult = simplexml_load_string($fileContent ,'SimpleXMLElement', LIBXML_NOCDATA);$data = json_decode(json_encode($xmlResult)...原创 2020-01-20 11:33:36 · 14454 阅读 · 0 评论 -
[CURL_6]: Could not resolve host: www.aaa.com; Name or service not known
这个问题是PHP 的 curl远程请求数据的报错,而且是有时可以有时不可以,很奇怪百度上有的说原因:外网使用正常,证明提供服务未出问题。内部访问报错’dns找不到这个网址‘,可能是某dns服务器或dns解析出现了问题。解决方法:修改或添加dns(dns服务器地址可网上查询)cat /etc/resolv.confnameserver 114.114.114.114可...原创 2019-11-26 15:28:13 · 2616 阅读 · 0 评论 -
RSA的公钥和私钥验证
1,如果私钥在一行,openssl_pkey_get_private()就会返回false,所以我们要修改格式$privateKey = "MIICXgIBAAKBgQDjI484irh8X8+/ahon/+frln74K7azpwHrvei70c2cpjFoW4ghkfQmhBkcqNj/OCyGAcDDw30v/PActXlPGqxT79E7zobAU4PbikkEoqnY440E4D...原创 2019-10-17 17:28:25 · 2603 阅读 · 0 评论 -
redis的使用场景
redis有序集合ZADD 20180612 10 2519823 //ZADD命令,20180612key值(名字),10分数,2519823用户的idZRANGE 20180612 0 10 WITHSCORES //有序集合20180612从小到大取前10个数据,包括分数ZRANGE 20180612 0 10 //有序集合20180612从小到大...原创 2018-06-15 10:22:15 · 173 阅读 · 0 评论 -
解决php -v查看到版本和phpinfo()打印的版本不一致问题
今天无意中将线上的php版本给覆盖了,导致 php -v查看到版本和phpinfo()打印的版本不一致,于是我将刚刚的安装的php版本给删掉。查看php版本命令:php -v这个命令是删除不干净的yum remove php因为使用这个命令以后再用php -v还是会看到有版本信息的。。。。。 必须强制删除rpm -qa|grep php提示...原创 2019-02-18 16:12:08 · 2094 阅读 · 0 评论 -
TP5实现同一个帐号后登录会将先登录的挤下去
先说一下流程:A用A的账号先登录,登录的时候,将用户信息存到session之后,将sessio_id和登录时间存到redis中,B用A的账号登录,同样是将用户信息存到session之后,将sessio_id和登录时间存到redis中,但是这个时候用户A的在redis中的session_id和登录时间已经被改变了,当A再操作页面的时候,会检查session中的session_id和redis中的se...原创 2019-01-23 16:52:02 · 2893 阅读 · 2 评论 -
nginx和php的启动方式
今天发现公司有一台服务器有问题,经过检查首先检查端口通不通要检查端口要先在windows上装一个telnet客户端等待安装好装好之后查看端口是否是通的打开 cmd 执行telnet 47.101.54.26 81服务器47.101.54.26的端口如果是通的直接会连上去的,如果不通,会提示连不上这时候提示没有连接上,说明服务器有问题,如是检查...原创 2019-01-08 14:21:15 · 1157 阅读 · 0 评论 -
HTTP返回状态值
200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。 301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。 302 (临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。 401 (未授权) 请求要求身份验证。 对于需要登录的网页,服务器...原创 2019-01-04 15:59:01 · 615 阅读 · 0 评论 -
负载均衡----实现配置篇(Nginx)
还是图比较清晰,以下我都用别名称呼: PA : 负载均衡服务器/WEB入口服务器/www.mydomain.com P1 : WEB服务器/分身1/192.168.2.3 P2 : WEB服务器/分身2/192.168.2.4 P3 : WEB服务器/分身3/192.168.2.5PS:首先我们学这个的开始之前吧,不懂防火墙的童鞋们,建议你们把PA、P1、P2、P3的防...转载 2019-01-04 10:51:14 · 197 阅读 · 0 评论 -
非常实用的PHP常用函数汇总
1、PHP加密解密PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过可逆解密字符串,该函数使用了base64和MD5加密和解密。function encryptDecrypt($key, $string, $decrypt){ if($decrypt){ $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJ...转载 2019-01-03 16:58:34 · 179 阅读 · 0 评论 -
ThinkPHP5远程代码执行高危漏洞(附:升级修复解决方法)
漏洞描述由于ThinkPHP5框架对控制器名没有进行足够的安全检测,导致在没有开启强制路由的情况下,黑客构造特定的请求,可直接GetWebShell。漏洞评级严重影响版本ThinkPHP 5.0系列 < 5.0.23ThinkPHP 5.1系列 < 5.1.31安全版本ThinkPHP 5.0系列 5.0.23ThinkPHP 5.1系列 5.1.31...原创 2018-12-12 10:44:53 · 28964 阅读 · 0 评论 -
nginx屏蔽指定ip
找到nginx.conf的位置find / -name nginx.conf一般在这里/usr/local/nginx/conf/nginx.conf再执行命令cd /usr/local/nginx/confvi blockips.conf在blockips.conf文件中将要屏蔽的ip写进去deny 1.2.3.4; //屏蔽单个ip...原创 2019-03-01 18:50:50 · 4358 阅读 · 0 评论 -
composer在windows环境下安装,使用教程
第一步:配置path。这里我的php在E:\wamp\bin\php\php5.5.12目录下面。操作如图一图二第二步:下载安装包,配置php文件1、下载安装包,https://getcomposer.org/download/2.在php.ini文档中打开extension=php_openssl.dll3.下载php_ssh2.dll、php_ssh2....转载 2019-03-05 16:24:55 · 759 阅读 · 0 评论 -
laravel框架利用phpExcel实现Excel数据的导入导出
所需要的phpexcel的类在vendor中导入excel前端:<form id="xml_config_search" action="upload" method="post" enctype="multipart/form-data"> {{ csrf_field() }} 选择文件:<input type="file" name="fi...原创 2019-03-21 15:16:59 · 1637 阅读 · 0 评论 -
基于Redis的消息队列php-resque
转载:http://netstu.5iunix.net/archives/201305-835/最近的做一个短信群发的项目,需要用到消息队列。因此开始了我对消息队列选型的漫长路.为什么选型会纠结呢,直接使用ActiveMQ,RabittMQ,Gearman等流行的消息队列不就可以了吗? 在这个项目中,只有单台服务器,而且我采用了redis来做系统缓存,同时开启了php apc来缓存phal...转载 2018-09-03 16:06:17 · 492 阅读 · 0 评论 -
thinkphp5+Gatewayworker搭建的web客服系统
github地址:https://github.com/yangshengquan87/thinkphp5-Gatewayworker-web-/tree/master/laykefu原创 2019-10-10 16:25:50 · 767 阅读 · 0 评论 -
php限制单个ip访问和限制ip段访问
function getClientIP(){ if(getenv("HTTP_CLIENT_IP")){ $ip = getenv("HTTP_CLIENT_IP"); }else if(getenv("HTTP_X_FORWARDED_FOR")){ $ip = getenv("HTTP_X_FORWARDED_FOR"); }el...原创 2019-09-16 18:12:50 · 2207 阅读 · 0 评论 -
php统计在线人数
<?php/*@ PHP 在线人数统计程序note: 一般独立在线人数统计程序都是统计在线的IP数,而这并不准确例如局域网的访问者,比如公司,学校机房和网吧,虽然内网IP不同,但是外网IP都是一样如果同一个局域网的无论多少人人访问你的网站则只被认为是一个人这个小巧的程序解决了此问题,它以电脑为单为,每台电脑便算一个访问者当然因为使用的是COOKIE,如果你在同一台电脑上使用两...转载 2019-06-18 14:06:58 · 830 阅读 · 0 评论 -
阿里云的短信收不到
阿里云的短信收不到的问题阿里罗列了以下原因: 手机装了拦截软件。 手机关机、暂无信号、欠费或者停机。 手机欠费停机后充值复机第一天无法接收SP短信。 用户自己在运营商那边设置了黑名单。 手机无法接收长度超过70个字的短信。 手机在境外使用或者使用境外手机。 手机短信息存储满了。 个别地区有手机网络、运营商故障等。 ...原创 2019-06-11 13:48:04 · 6096 阅读 · 0 评论 -
Linux安装SG11加密扩展组件教程
很多开源程序作者都做SG11的php加密,但是部分主机都没有开启或不支持,这里纯手动安装,提前做好镜像,宝塔和其他面板工具免看了。第一步:下载组件,本组件地址由大同融网科技提供,组件支持ixed.4.3.lin -ixed.7.2ts.lin,组件节点分布华北,华南,西南,华中,海外.下载地址:https://cloud.rongkeji.cn/download/s...转载 2019-06-03 18:24:19 · 10593 阅读 · 1 评论 -
get传输参数中有+号的问题
今天碰到一个很奇葩的问题,就是用get传的参数中如果有 + 号,接收到的参数这个 + 被空格代替了,就导致参数出错正常接收到的数据是这样的错误接收到的数据是这样的将这些参数用用get拼接好了再去请求,接收到的参数竟然 + 号变成空格了,查了资料后才知道,这是因为get请求先要被unicode编码,所以才导致变成了空格,以后要记住有 + 的参数要post传输了...原创 2019-04-12 10:32:04 · 4033 阅读 · 0 评论 -
几种好用的PHP自定义加密函数(可逆/不可逆)
项目中有时我们需要使用PHP将特定的信息进行加密,也就是通过加密算法生成一个加密字符串,这些加密后的字符串可以通过解密算法进行解密,便于程序对解密后的信息进行处理。最常见的应用在用户登录以及一些API数据交换的场景。最常见的应用在用户登录以及一些API数据交换的场景。加密解密原理一般都是通过一定的加密解密算法,将密钥加入到算法中,最终得到加密解密结果。废话不多说,直接上代码。一、第一种针对...转载 2019-04-01 17:55:44 · 3372 阅读 · 0 评论 -
从redis读取json数据的中文数据的乱码
从redis读取的数据,这个数据是json发现nickname是乱码的$data:Array( [0] => {"userid":270,"nickname":"erjiankuan"} [1] => {"userid":114,"nickname":"��ͨ���"} [2] => {"userid":250,"nickname":"���...原创 2019-03-25 11:05:12 · 7384 阅读 · 1 评论 -
安装lnmp1.5到最后出现Error: MySQL install failed的解决方法
mv /usr/bin/cmake /usr/bin/cmake.backupwget http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gztar zxf cmake-3.0.2.tar.gzcd cmake-3.0.2./configuregmakemake && make installln -sf /usr/...转载 2018-12-10 11:28:09 · 3423 阅读 · 0 评论 -
lnmp1.5一键安装包 访问thinkphp项目public目录下的index.php 提示500服务器错误问题
php版本是 7.1.18mysql是5.5.60swoole是4.0.0redis是4.0版本phpmyadmin 是4.4.15.6 tp5.1.16 运行正常 目前在centos 7.3的虚拟机上成功安装了以上软件。但是其中遇到了一大波坑,大部分都是由于lnmp1.5里面的nginx配置文件引起的问题。导致了,使用tp5.1.16 做项目的...转载 2018-12-10 10:25:58 · 483 阅读 · 0 评论 -
php将2个日期之间的日期存到数组里面
function date_rang($start_date, $end_date){return array_map(function($n){return date('Y-m-d', $n);}, range(strtotime($start_date), strtotime($end_date), 24*3600));}print_r(date_rang('2014-11-10',...原创 2018-12-19 13:36:36 · 773 阅读 · 0 评论