![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
helencoder
Java,PHP,足球,逗比。每条道路上都要越走越远。
展开
-
基于原生PHP的路由分配实现
对于由原生PHP写成的独立PHP框架,利用单一入口文件实现路径的访问。这时我们会遇到的首要问题是:文件的相互包含,其次就是路由分配。当我们不利用成熟的PHP框架进行web开发时,我们就会发现上述两个问题会是很困扰我们的问题所在。问题解决方案: 1、文件包含 php的文件包含有两种方式:require和include,两个方法的区别在于利用require包含文件当出错时,会报出严重错原创 2016-07-29 16:07:03 · 15742 阅读 · 0 评论 -
微信公众平台页面授权处理方法(单一方法处理)
在使用微信公众平台进行第三方开发的过程中,我们经常会遇到需要调用微信页面授权、从而获取用户信息。但是单一的使用微信页面授权的方式进入页面,总会存在跳转到微信页面进行授权的问题,这样就会增加用户进入页面所费时间,从而影响用户体验。 所以我们需要一种方式,借助其他机制等,不必要使得用户每次均要跳转到微信页面授权位置。这样在用户不是第一次进入页面的过程中,即可以不用跳转微信页面授权,从而减少用户进入页面原创 2016-03-24 11:19:11 · 5640 阅读 · 2 评论 -
php中的单引号(int类型和string类型的转换)
示例代码:$a = '10';var_dump(gettype($a));settype($a,'int');var_dump(gettype($a));此时输出结果为:string、interger但是假如:$a = 10;var_dump(gettype($a));settype($a,'int');var_dump(gettype($a));此时输出结果均为intergerphp中原创 2016-03-21 09:28:45 · 1052 阅读 · 0 评论 -
微信公众平台接口API
本API为笔者本人所写,包括微信公众平台几乎所有的接口、接口调用方法以及错误返回码等。所有函数名称均利用接口的英文名,便于查找和使用、后期会持续优化。关于各个接口的调用的案例、会持续更新。<?php/** * Author: helen * CreateTime: 2015/12/9 20:14 * description: 微信公众平台接口API */class Wechat{原创 2015-12-26 11:31:05 · 15060 阅读 · 0 评论 -
[转]linux中添加ftp用户,并设置相应的权限
在linux中添加ftp用户,并设置相应的权限在linux中添加ftp用户,并设置相应的权限,操作步骤如下:1、环境:ftp为vsftp。被限制用户名为test。被限制路径为/home/test2、建用户:在root用户下:useradd -d /home/test test //增加用户test,并制定test用户的主目录为/home/test passwd test //为test设置密码3、转载 2016-01-06 22:00:06 · 794 阅读 · 0 评论 -
json_encode()方法设置不转义中文
json_encode()方法设置不转义中文,添加JSON_UNESCAPED_UNICODEjson_encode($articles,JSON_UNESCAPED_UNICODE)原创 2015-12-21 20:12:07 · 2177 阅读 · 0 评论 -
ThinkPHP3.2实现简单的数据分页
ThinkPHP3.2中实现了page类,同时配合数据表中的page()方法进行分页操作。 controller代码://实例化文案表 $local_articles = M('local_articles'); $p = empty($_GET['p'])?0:$_GET['p']; // 进行分页数据查询 注意page方法原创 2015-12-21 18:39:02 · 4774 阅读 · 0 评论 -
ThinkPHP中的select()方法调用注意点
ThinkPHP中使用select()方法调用数据库时,会将字段名中的大写字母自动变为小写字母输出。故在使用其返回信息时,需要利用全是小写字母的字段名进行获取。 亲测,请注意!原创 2015-12-03 10:16:51 · 1255 阅读 · 0 评论 -
微信扫一扫打印照片的原理以及实现过程(持续更新中)
近来对于微信扫一扫打印照片十分的感兴趣,觉得挺有意思的。对于软件编程以及连接打印机等硬件方面的知识都有所涉及,故实现这样的的微信扫一扫打印照片的功能。 分析如下: 微信扫一扫首先设计二维码的生成和获取,然后实现扫描二维码用户进入相应的公众号主页,继而对于用户上传的图片进行处理并将处理后的图片通过某种方式传递给打印机进行打印。 难点: 微信扫一扫接口的使用、用户上传图片的收集和处理、电脑与打印原创 2015-12-02 09:51:32 · 8652 阅读 · 1 评论 -
ThinkPHP去重 distinct和group by
近期项目中,遇到数据表去重要求,对于ThinkPHP的去重有了更加准确的认识和体会。 两种去重方式:$test_data = M('hot'); //实例化数据表$data = $test_data->Distinct(true)->field('descriprion')->order('description desc')->select(); //利用distinct方法去重$dat原创 2015-12-16 15:33:43 · 29624 阅读 · 0 评论 -
(php)实现批处理文件以及PHPExcel的实践
利用PHPExcel进行excel插入操作。同时需要进行系统文件夹的扫描和重命名! 项目需求:网站上线要将照片上传到线上,但是有些照片的名称是中文导致上传失败,现需要将名称均改为不包含中文的名字,然后将修改前和修改后的名称的对应关系写到excel表中。 项目实现:首先实现的是对于照片名称的读取,同步实现对于照片名称的修改操作。然后将其中对应的新名称和旧名称均加入到数组中,利用phpexcel将数原创 2015-11-28 23:47:42 · 785 阅读 · 0 评论 -
PHP面向对象编程--类的创建和对象实例化(类、对象、模块化、抽象)
PHP除了简单的为了实现特定功能外,也可以实现面向对象的编程方式,而且也可以很优雅! 下面利用具体的代码实例,讲述类的创建和对象实例化。“`原创 2016-04-10 19:34:02 · 1408 阅读 · 0 评论 -
PHP面向对象编程--继承(重写(多态)、封装、可见性)
<?php/** * Author: helen * CreateTime: 2016/4/10 9:58 * description: 面向对象--继承(重写(多态)、封装、可见性) */namespace Home\Controller\Program;use Home\Controller\CommonController;class InheritController ext原创 2016-04-10 19:37:24 · 2262 阅读 · 0 评论 -
PHP推荐标准(PSR)
PSR是PHP Standards Recommendation的简称。PSR-1: 基本的代码风格 PHP标签 必须把PHP代码放在<?php ?> 或 <?= ?> 标签中。不得使用其他PHP标签语法。 编码 所有PHP文件都必须使用UTF-8字符集编码,而且不能有字节顺序标记 目的 一个PHP文件可以定义符号(类、性状、函数和常量等),或者执行有副作用的操作原创 2016-05-06 18:04:25 · 2802 阅读 · 0 评论 -
邮件发送(PHP实现)
用过PHP的人基本都知道,PHP有一个函数mail(),专门用来发送邮件,但是当你实际用过你才发现,是有多么的费劲,你需要自己去实现SMTP服务,当前假如你想也不是不可能。 但是假如存在这么一种简便方法呢。借助已有的smtp.php类就可以轻松的实现邮件发送。何乐而不为呢! 代码示例如下: 首先引入:下载smtp.php文件,下载链接:smtp.php使用代码如下: 为了使用更简洁,我们可以原创 2016-04-19 23:36:50 · 627 阅读 · 0 评论 -
中奖概率算法
function getRand($proArr) { //传入的为一维数字数组,此数组中数字即为相应概率 $result = ''; //概率数组的总概率精度 $proSum = array_sum($proArr); //概率数组循环 foreach ($proArr as $key => $proCur) {原创 2016-05-14 10:01:31 · 2073 阅读 · 0 评论 -
MySQL数据库操作类(PHP实现,支持连贯操作)
使用过ThinkPHP框架的同学可能会对于其中数据库模型操作特别有好感,ThinkPHP提供了数据库操作的简单的操作,对于连接数据库,数据库的增删改查等数据操作都非常的nice,同时支持连贯操作,对于那些不习惯写sql语句的同学真是大大的便利。(注:sql还是很重要的,不要因为用了框架就把原先的忘了)。 而在笔者使用php操作redis实现后台任务的过程中,也想要借助这种便利,但无奈redis操作原创 2016-04-17 11:27:47 · 21395 阅读 · 5 评论 -
经典排序算法的PHP实现类
近期广受笔试摧残,对于各种排序也是晕头转向。 更坑爹的是貌似大多都是用C++、Java实现相关算法,让我搞PHP的情何以堪,更何况,PHP本身就有排序函数sort(),其实来说,是很简单的,这也可能是为什么不用PHP进行排序吧。 但考虑到PHP毕竟也是一门面向对象的语言吧,我们利用原生的语法,也是可以实现经典排序算法的,先不说性能如何,切不要妄自菲薄吧。 下面为具体的经典排序算法的PHP实现类原创 2016-04-16 19:01:05 · 3611 阅读 · 0 评论 -
redis在PHP中的基本使用案例
利用phpredis实现php操作redis,需要进行redis.so的下载,添加//利用Redis类进行操作//实例化Redis类$redis = new Redis();//选择指定的redis数据库连接,默认端口号为6379$redis->connect('127.0.0.1', 6379);//普通set/get操作$redis->set(‘library’, ‘predis’);转载 2016-04-28 16:51:28 · 14100 阅读 · 0 评论 -
Github上的PHP资源汇总
目录[-]依赖管理依赖管理的附加部分框架框架的附加部分框架组件微型框架微型框架的附加部分模板静态站点生成器HTTPURLEmail文件流依赖注入图像测试持续集成文档安全性密码代码分析调试构建工具任务运行器导航资源管理地理定位日期和时间事件日志电子商务PDF转载 2016-04-15 14:35:43 · 1423 阅读 · 0 评论 -
利用redis和php-resque实现后台任务
在PHP的页面编程过程中,我们总遇到这样一个问题,即是PHP是一个顺序执行的过程,只能在一个任务完成后接着去实现下一个任务,而这其中存在一个问题,就是假如其中一个任务耗费大量时间的时候,我们可能就必须要等待。借助redis可以将耗时任务放到后台去执行,从而减少等待时间。原创 2016-04-11 15:56:23 · 8566 阅读 · 0 评论 -
微信JSSDK页面授权实现类(PHP)
微信页面授权–(JS-SDK使用权限签名算法) 使用方法:实例化此类,然后调用其中的getSignPackage()方法即可。 注意:其中涉及获取access_token和jsapi_ticket需要自己缓存,不能频繁获取!<?php/** * Author: helen * CreateTime: 2016/4/11 10:39 * description: 微信页面授权--(JS-原创 2016-04-11 14:54:15 · 5833 阅读 · 0 评论 -
PHP面向对象编程--抽象类和方法
PHP除了简单的为了实现特定功能外,也可以实现面向对象的编程方式,而且也可以很优雅! 下面利用具体的代码实例,讲述面向对象中的抽象类和方法相关概念。<?php/** * Author: helen * CreateTime: 2016/4/10 11:18 * description: 面向对象--抽象类和方法 */namespace Home\Controller\Program原创 2016-04-10 19:40:09 · 664 阅读 · 0 评论 -
cURL上传图片等文件使用CURLFile class 替代 @filename API
在使用cURL上传图片等文件时,利用cURL方法,传统的上传方法。//图片信息 $img_path = dirname(__FILE__).'\boy.jpg'; $img_data = array( 'media'=>'@'.$img_path ); $res = $Wechat->uploadImg(access_token,$img_data);原创 2015-12-14 11:18:50 · 7074 阅读 · 0 评论 -
[实践]微信公众平台开发方法汇总(php)
笔者在实际的开发工作中,对于微信公众平台的开发有了些许的体会,对于微信公众平台的接口调用方法以及相应的一些信息组织有了些许认知。现总结如下:微信公众平台相应接口的调用主要分为get方法和post方法。同时涉及到下载相关的多媒体文件,以及信息格式(XML)的组织。方法一:接口调用的get方法function curl_get($url){ //初始化 $ch = c原创 2015-11-26 09:54:30 · 784 阅读 · 0 评论 -
[亲测]Apache配置虚拟域名
原先刚接触Apache服务器的时候,觉得配置个虚拟域名是很炫的技能,但你自己研究一下,才发现原来是So easy! Apache配置虚拟域名,主要需要配置两个文件一个是本机的hosts文件,一个是apache的配置文件httpd.conf。1.本地hosts访问一个域名,通过dns服务器得到该域名所指向的服务器ip地址,然后通过ip地址和服务器建立连接,完成剩下的事情。开发过程中,我们利用host原创 2015-11-03 19:16:29 · 7788 阅读 · 0 评论 -
PHP学习笔记(三):运算符
运算符优先级 算术运算符 取反、加、减、乘、除(商 返回浮点数,整除除外)、取模(余数) 取模运算符%的结果和被除数的符号(正负号)相同。 赋值运算符 符号=意味着把右边表达式的值付给左边的运算数。 对于数组而言,对有名字的键赋值使用=>运算符。 另外还有“组合运算符” 位运算符 左移相当于乘2,右移相当于除2. 比较运算符 三元运算符 错误控制运算符 @ 当其放置原创 2015-09-24 11:17:56 · 473 阅读 · 0 评论 -
PHP学习笔记(四):流程控制
流程控制语句中包含多条语句,其中if、if_else、elseif、while、do_while、for、switch在其他的编程语言中都已存在,在PHP这些语句也无二致,在此不予赘述。 PHP提供了一些流程控制的替代语法,包括if、while、foreach、switch。替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号分别换成endif;endwhile;endfor;endfo原创 2015-09-24 11:55:33 · 372 阅读 · 0 评论 -
PHP学习笔记(一):类型
PHP即PHP:Hypertext Preprocessor,是一种被广泛应用的开源通用脚本语言,尤其适用于web开发并可嵌入HTML中去。它的语法利用了C、Java、Prel,易于学习。该语言的主要目标是允许web开发人员快速编写动态生成的web页面。 和客户端的Javascript不同的是,PHP代码是运行在服务端的。PHP脚本主要应用于以下三个领域:一、服务端脚本;二,命令行脚本;三、编写桌原创 2015-09-24 09:43:05 · 396 阅读 · 0 评论 -
利用PHPExcel实现Excel文件的写入和读取
作为一个原本的JAVA党,用过PHP才知道,原来对于Excel文件的写入和读取原来可以这么简单! 利用PHP实现对于Excel的读取,主要借助于PHPExcel插件来完成。 PHPExcel下载地址:PHPExcel下载 一、PHPExcel实现写入excel操作步骤 首先需要引入类文件,引入PHPExcel.php文件。 1、新建一个Excel表格(实例化PHPExcel类) 2、创建原创 2015-09-18 09:13:09 · 26078 阅读 · 1 评论 -
微信公众号智能识别回复的实现(基于ThinkPHP框架)
Controller代码:public function index(){ //获取微信发送确认的参数。 $signature = $_GET['signature']; $timestamp = $_GET['timestamp']; $nonce = $_GET['nonce'];原创 2015-11-05 16:22:55 · 1337 阅读 · 0 评论 -
微信公众账号利用post方法调用接口实现方法
微信公众账号利用post方法调用接口实现方法,相较于利用get方法调用接口而言,利用post方法需要额外设置cURL的参数,同时需要对数据进行格式改造,一般为利用json数据传输。 以获取素材列表为例:function getSucaiList($Token,$Data){ $url = 'https://api.weixin.qq.com/cgi-bin/material/bat原创 2015-11-05 21:35:29 · 6710 阅读 · 0 评论 -
微信公众号开发sprintf()函数其中%S等符号的说明
**转换说明符** %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和doulbe) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%原创 2015-11-04 15:14:01 · 2226 阅读 · 0 评论 -
ThinkPHP3.2中引入JS,CSS文件路径配置
在ThinkPHP3.2框架中,默认已经没有Public文件夹了。其中对于__PUBLIC__的定义也需要重新定义。这给笔者造成了很长时间的困扰,现在这个问题终于解决,分享出来给大家参照一下。 在ThinkPHP中config文件中进行一下配置即可。//重定义网站的一些URL地址 /* 模板相关配置 */ 'TMPL_PARSE_STRING' => array(原创 2015-11-03 11:15:18 · 10566 阅读 · 1 评论 -
php页面编码设置的方法
输出meta标签: 1、在php mvc的控制器里面或php页面echo '<meta http-equiv="content-type" content="text/html; charset=utf-8">'; 2、在php页面或html页面<meta http-equiv="content-type" content="text/html; charset=utf-8"> 使用header函数原创 2015-11-03 14:17:57 · 1871 阅读 · 0 评论 -
ThinkPHP3.2中预定义常量解析
在HOME模块下的Controller文件下直接创建TravelController.class.php文件。代码如下:<?php namespace Home\Controller; use Think\Controller; class TravelController extends Controller{ public function index()原创 2015-11-03 11:52:43 · 1428 阅读 · 0 评论 -
PHP学习笔记(六):类与对象
自PHP 5起完全重写了对象模型。PHP 5中的新特性包括访问控制、抽象类和final类方法,附加的魔术方法,接口,对象复制和类型约束。 基本概念 class 每个类的定义都以关键字class开头,后面跟着类名,后面跟着一对花括号,里面包含有类的属性与方法的定义。 一个类可以包含有属于自己的常量、变量(“属性”)以及函数(“方法”)。 例:class SimpleClass {原创 2015-09-24 17:02:03 · 468 阅读 · 0 评论 -
PHP实现验证码的实现
利用PHP依赖的GD库可以轻松实现验证码 验证码生成步骤: 1、生成底图 利用imagecreatetruecolor()方法生成底图。 函数解释: **imagecreatetruecolor — 新建一个真彩色图像 说明: resource imagecreatetruecolor ( int width,intwidth , int height ) imagecrea原创 2015-09-22 22:27:18 · 480 阅读 · 0 评论 -
PhpStorm快捷键
PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能。ctrl+j 插入活动代码提示ctrl+alt+t 当前位置插入环绕代码alt+insert 生成代码菜单ctrl+q 查看代码注释ctrl+d原创 2015-11-02 11:44:54 · 429 阅读 · 0 评论 -
[转]百度UEditor编辑器(php)
百度UEditor编辑器!合入PHP网站!一、富文本内容交互1、编辑器内容初始化(即往编辑器中设置富文本)场景一:写新文章,编辑器中预置提示、问候等内容。在editor_config.js文件中找到initialContent参数,设置其值为需要的提示或者问候语即可,如initialContent:’欢迎使用UEditor!’。场景二:编辑旧文章,从数据库中取出富文本放置到编辑器中。显然,编辑文章时转载 2015-11-18 09:42:16 · 1356 阅读 · 0 评论