
php
文章平均质量分 67
WallerKP
这个作者很懒,什么都没留下…
展开
-
html转换为json字符串,正则表达式的应用
最近在做app,需要做一个查看物流的接口,从第三方去申请物流API,由于申请的是免费的,所以只能返回html(这个有点坑,免费的和收费的区别太大了吧),谁让咱是做技术的,即使是html,也可以把它变成json。首先请求API,获取到一个html如下:$content = '<table width="520px" border="0" cellspacing="0" cellpadding="0"原创 2017-06-30 16:15:12 · 2146 阅读 · 0 评论 -
laravel 一个小时未付款取消订单-Redis键空间通知过期事件的应用实例
在 PHP对Redis键空间通知过期事件的应用实例 一文中,已经介绍了PHP对Redis键空间通知功能的应用。本文主要介绍laravel中对Redis键空间通知过期事件的应用。场景:用户下单后一个小时如果没付款就取消掉订单。要实现这个,有了前文的基础,我们肯定不会只想到crontab定时去做,还会想到用Redis去实现。那么具体该怎么操作?请往下看:1、先配置一下 .env 文件 ,...原创 2019-01-03 17:56:32 · 2098 阅读 · 3 评论 -
laravel 对 ID 进行对称加密
有时候我们不希望直接把ID暴露给用户,因为有规则的ID,容易泄露信息,同时有可能被第三方直接遍历抓取资源。这时为了安全考虑,我们需要对ID进行加密解密。laravel的一个对ID加密解密的扩展包地址:https://github.com/vinkla/laravel-hashids1.在laravel中安装hashidscomposer require vinkla/hashi...原创 2018-12-20 18:03:00 · 2621 阅读 · 1 评论 -
使用 PHPStorm 与 Xdebug 调试 Laravel
写PHP的API时,一直用postman做测试,最近发现在测试过程中可以用xdebug来断点调试,比原来手动打exit或者die来断点效率高多了。下面记录下我自己从安装到测试的全部详细过程。我的运行环境是:windows+wamp。环境系统版本:Windows 10 PHP 版本:7.0.12 Xdebug 版本:2.7 Laravel 版本:5.3 PHPStorm 版本:2...原创 2018-09-04 17:42:03 · 4433 阅读 · 0 评论 -
laravel 多对多关联模型CURD详解
1、laravel官方文档中给出了一种用户-角色(User-Role)关系的例子。在这个例子中,一个用户可能与多个角色对应,反过来同理,一个角色也可能对应多个用户。官方说的比较简单,这里详细介绍一下。一个用户可以有多个不同的角色; 一个角色会拥有各种不同的用户;现在已最简单的数据解构为例进行说明:角色数据表roles :id、name 用户数据表users : id、name 角色...原创 2018-08-28 15:10:32 · 4025 阅读 · 0 评论 -
用Redis替代session改写thinkPHP验证码类
最近有一个项目,因为后端才有的是thinkPHP框架,前端用的VueJS框架,需要用到验证码,由于都是用的API,所以原有的tp框架验证码类采用的session存储方式无法实现需求,需要进行改写。记录一下过程,并分享给大家以供参考。 验证码类中主要涉及到两个方法,一个是生成方法entry,另一个就是验证方法check。 1、定一个变量 protected $redis; 在__constru原创 2018-05-09 21:26:09 · 1170 阅读 · 0 评论 -
PHP对Redis键空间通知过期事件的应用实例
一、需求分析: 1、设置了生命时间的key,过期的时候能不能提示,能够监听过期的key? 2、怎样用redis实现定时任务? 二、应用场景: 在我们程序中经常会有需要定时执行的程序,比如:商品下单后半小时内不支付自动撤单等等。 最简单粗暴的办法,就是写一个程序,让它定时执行,但是这样对服务器压力比较大。 这里说的是用Redis去实现这样的一个功能。 三、Redis键空间通知介绍 在原创 2018-03-20 14:11:03 · 5653 阅读 · 0 评论 -
Linux服务器下PHPMailer发送邮件失败问题的解决
最近在做一个项目,其中有用到PHPmailer来发送邮件,在本地测试好后,上传到线上,邮件发送失败。用的是SMTP协议,本地用的是wamp环境,线上用的是lamp环境。于是就进行一系列的排查。 排查过程 这种方式首先PHP要开启sockets扩展,以及openssl。 1、查看php扩展#php -m发现是开启的 2、 然后打开php.ini,查看allow_url_fopenallow_u原创 2017-11-09 21:24:47 · 6551 阅读 · 0 评论 -
windows 10 安装composer 出错
学习laravel框架的时候需要安装composer,从官网https://getcomposer.org/download/下载下来Composer-Setup.exe,安装过程中报了如下错误:所以这里我就换了一个方式安装,就是自己手动来安装composer,方法如下:一 、下载phar的文件如下图: 建议下载最新版本,把下载好的文件放到php.exe所在的目录下。二、新建一个compose原创 2017-07-06 23:01:39 · 3258 阅读 · 1 评论 -
支付宝APP支付-php后台签名以及验签
一、 下载php支付宝sdk https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.eCtVsf&treeId=54&articleId=103419&docType=1 二、 查看支付宝App支付请求参数文档,拼接请求参数,签名 App支付请求参数说明 https://doc.open.alipay.com/docs/原创 2017-06-23 16:39:03 · 11892 阅读 · 3 评论 -
PHP隐藏部分字符串(如:姓名、用户名、身份证、IP、手机号等)函数
PHP隐藏部分字符串(如:姓名、用户名、身份证、IP、手机号等)函数。此函数用法 和 PHP内置函数 substr(),几乎是一样的。只不过 substr() 是用于截取,而hidestr()是隐藏~/** * 将一个字符串部分字符用$re替代隐藏 * @param string $string 待处理的字符串 * @param int $start 规定在字符串的转载 2017-07-05 15:53:14 · 10343 阅读 · 1 评论 -
laravel 自定义请求验证类
laravel的验证可以直接在控制器里面这样验证: $validatedData = $this->validate([ 'title' => 'required|unique:posts|max:255', 'body' => 'required', ]); if ($validatedData ->fails(...原创 2019-01-08 14:01:57 · 1411 阅读 · 0 评论