随笔分类 -  PHP

摘要:代理模式 桥连模式 门面(外观)模式 阅读全文
posted @ 2018-04-13 18:06 cqingt 阅读(189) 评论(0) 推荐(0) 编辑
摘要:开发中适当的使用设计模式,可以让项目有更易扩展,易维护、低耦合,代码简洁等 单例模式 工厂模式 注册模式 观察者模式 策略模式 适配器模式 装饰器模式 阅读全文
posted @ 2018-04-12 18:20 cqingt 阅读(871) 评论(0) 推荐(1) 编辑
摘要:微信小程序开发,请求服务器API的方法使用的是微信官方提供的wx.request()方法。在开发中发现,每一个请求都会生成一个独立的PHPSESSID,如下图示: 搜索后得知,这是由于wx.request()造成的。如果直接使用浏览器请求并不会出现这种情况。 解决方式如下: 通过登录接口获取到用户的 阅读全文
posted @ 2018-03-15 14:37 cqingt 阅读(2563) 评论(0) 推荐(0) 编辑
摘要:最近公司新开发的APP中,需要集成微信支付和支付宝支付,2个平台申请的都是APP支付。这是个人第一次单独的,完整的做完2个平台的支付。 这里我主要用到了2个接口:支付接口,订单查询接口,虽然2个平台的文档都挺齐全,但开发下来,还是踩了不少坑,记录下来,或许对后来人有用。 先来说支付宝SDK: 了解3 阅读全文
posted @ 2018-01-19 10:23 cqingt 阅读(2693) 评论(1) 推荐(0) 编辑
摘要:在阅读TP5.1源码,发现其在时间范围上的写法很特别,个人第一次见,做一次记录 阅读全文
posted @ 2018-01-08 17:55 cqingt 阅读(1254) 评论(0) 推荐(0) 编辑
摘要:tp5.1中引入了容器(Container)和门面(Facade)这两个新的类 官方文档已经给出了定义: 容器(Container)实现类的统一管理,确保对象实例的唯一性。 门面(Facade)为容器(Container)中的类提供了一个静态调用接口,相比于传统的静态方法调用, 带来了更好的可测试性 阅读全文
posted @ 2018-01-08 16:18 cqingt 阅读(11294) 评论(0) 推荐(5) 编辑
摘要:为什么使用PHP_CodeSniffer 一个开发团队统一的编码风格,有助于他人对代码的理解和维护,对于大项目来说尤其重要。 PHP_CodeSniffer是PEAR中的一个用PHP5写的用来检查嗅探PHP代码是否有违反一组预先设置好的编码标准的一个包,它是确保你的代码简洁一致的必不可少的开发工具, 阅读全文
posted @ 2018-01-08 10:44 cqingt 阅读(354) 评论(0) 推荐(0) 编辑
摘要:自动加载? 或许你已经对自动加载有所了解。简单描述一下:自动加载就是我们在new一个class的时候,不需要手动去写require来导入这个class.php文件,程序自动帮我们加载导入进来。这是php5.1.2(好像是)版本新加入一个功能,他解放了程序员的双手,不需要手动写那么多的require, 阅读全文
posted @ 2017-12-21 15:13 cqingt 阅读(769) 评论(0) 推荐(0) 编辑
摘要:PHP是世界上最伟大的语言,这一点是毋庸置疑的吧。哈哈哈哈哈哈 。这个霸气的开头不错!(^__^) 但是正是因为伟大,所以用的人也就多了,人一多,再牛逼再伟大的东西,都会产生问题,逐渐就造成了很多的分歧。每个人的习惯不一样,所以在一些PHP语法上的一些表现也是千差万别,比如这些问题: functio 阅读全文
posted @ 2017-12-21 13:46 cqingt 阅读(238) 评论(0) 推荐(0) 编辑
摘要:server { listen 2223; server_name manage; access_log /data/wwwlogs/access_manage.log combined; root /data/wwwroot/webroot/manage/public; index index.html index.htm admin.php;#默认后台... 阅读全文
posted @ 2017-11-23 15:50 cqingt 阅读(2159) 评论(0) 推荐(0) 编辑
摘要:今天在抓取页面中得到字符串:"卡牌 ",使用str_replace 、 preg_replace 和 strip_tags过滤都无解。 最后google到2种方式,如下: 阅读全文
posted @ 2017-11-23 10:16 cqingt 阅读(2308) 评论(0) 推荐(0) 编辑
摘要:项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token验证信息,参考了很多文章,最终实现如下: PHP后端使用base64: JS前端: 阅读全文
posted @ 2017-09-20 15:55 cqingt 阅读(17315) 评论(0) 推荐(1) 编辑
摘要:首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。 web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里分发的是静态数据。好了 阅读全文
posted @ 2017-09-15 15:27 cqingt 阅读(399) 评论(0) 推荐(0) 编辑
摘要:demo如下: 附官网文档:http://www.xunsearch.com/scws/docs.php php+中文分词scws+sphinx+mysql打造千万级数据全文搜索:http://blog.csdn.net/nuli888/article/details/51892776 阅读全文
posted @ 2017-07-28 16:11 cqingt 阅读(345) 评论(0) 推荐(0) 编辑
摘要:UMeditor组件是百度提供的一套开源的web在线所见即所得富文本编辑器,是UEditor的简化版,UM的主要特点就是容量和加载速度上的改变,主文件的代码量为139k,而且放弃了使用传统的iframe模式,采用了div的加载方式, 以达到更快的加载速度和零加载失败率。最近在使用的过程中发现其中上传 阅读全文
posted @ 2017-07-19 16:08 cqingt 阅读(544) 评论(0) 推荐(0) 编辑
摘要:当程序在线上运行时,如果遇到BUG,想不在前端输出错误信息,同时能及时邮件通知开发者,register_shutdown_function函数就可以派上用场了。 注册一个会在脚本执行完成或者 exit() 后被调用的函数。 可以多次调用 register_shutdown_function() ,这 阅读全文
posted @ 2017-07-03 14:36 cqingt 阅读(438) 评论(0) 推荐(0) 编辑
摘要:redis是什么: Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain s 阅读全文
posted @ 2017-04-24 01:33 cqingt 阅读(306) 评论(0) 推荐(0) 编辑
摘要:实现文件上传进度条基本是依靠JS插件或HTML5的File API来完成,其实PHP配合ajax也能实现此功能。 PHP手册对于session上传进度是这么介绍的: 下面原理介绍: 当浏览器向服务器端上传一个文件时,PHP将会把此次文件上传的详细信息(如上传时间、上传进度等)存储在session当中 阅读全文
posted @ 2017-04-07 00:41 cqingt 阅读(2463) 评论(1) 推荐(0) 编辑
摘要:// 函数式编程 $users = array( array('id' => 1, 'name' => 'abc1', 'age' => 29, '性别' => '男'), array('id' => 2, 'name' => 'abc2', 'age' => 21, '性别' => '女'), array('id' => 3,  阅读全文
posted @ 2017-04-06 14:50 cqingt 阅读(1497) 评论(0) 推荐(0) 编辑
摘要:1、.htaccess文件使用前提 .htaccess的主要作用就是实现url改写,也就是当浏览器通过url访问到服务器某个文件夹时,作为主人,我们可以来接待这个url,具体 地怎样接待它,就是此文件的作用。所有的访问都是通过URL实现,所以.htaccess的作用非同小可。正因为此,所以一般地网站 阅读全文
posted @ 2017-04-05 09:49 cqingt 阅读(624) 评论(0) 推荐(0) 编辑