
php
做一个有魅力的程序员
做一个有魅力的程序员
展开
-
用户体系如何创建扫码登录
用户体系如何创建扫码登录本文主要是实现扫码登录的原理获取二维码是否已经扫码授权登录扫码登录原理1、当用户每次打开扫码登录页面时都会生成一个带有唯一ID的二维码 2、用户打开对应客户端APP扫一扫并授权确认登录。客户端解析此二维码获取唯一ID,并将其与此登录帐号绑定。 3、PC端登录页面轮循检查此ID绑定/登录情况。如果检测到已绑定则获取对应绑定的用户帐号、密码并进行自动登录。时区图原创 2018-03-12 22:30:57 · 750 阅读 · 0 评论 -
新浪OAuth网站登陆连接,请求access_token时遇到21323 miss client id or secret 的解决方案
报错信息error":"invalid_request","error_code":21323,"request":"/oauth2/access_token","error_uri":"/oauth2/access_token","error_description":"miss client id or secret“解决方案:参照文档:http://open.weibo.com/原创 2016-06-28 18:41:22 · 5557 阅读 · 4 评论 -
include(Redis.php): failed to open stream: No such file or directory
报错信息:include(Redis.php): failed to open stream: No such file or directory【window 下redis报错的解决方法】这个错误信息是因为php.ini的配置文件中不存在extension=php_redis.dll信息下面配置php.ini服务重启服务就可以了php中的redis要对应正确的版本信息 才能成功查原创 2016-06-29 10:45:15 · 13322 阅读 · 2 评论 -
防安全漏洞开发规范
XSS(跨站脚本攻击)漏洞描述跨站攻击,即Cross Site Script Execution(通常简写为XSS)是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。安全隐患攻击者可利用XSS漏洞获取用户cookie,传播蠕虫,篡改页面或进行钓鱼等原创 2016-05-11 14:21:56 · 1052 阅读 · 0 评论 -
微信连wifi portal验证
一:创建公众账号门店1.添加功能门店管理2.创建门店二、添加微信连Wi-Fi设备完成后提交,获得门店Wi-Fi设备改造信息,包括:appId,shop_id,ssid,secretkey。三、开发移动端Portal页面微信连Wi-Fi流程模块时序图若无法看清图中文字,可先通过“图片另存为原创 2016-01-06 16:54:13 · 28002 阅读 · 13 评论 -
php优化
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 2、$row[’id’]转载 2016-07-04 18:02:44 · 574 阅读 · 0 评论 -
浅谈php接口
之前上学那会学习的专业是C#,工作中的php也在多个项目中,历练成长了不少,不过今天被一个问题问到,php接口,一直知道有这么一个东西存在,但是平时也没有怎么用到过接口,自己也查了下,先记录学习一下,以后有项目能用到那就在好不过书面定义接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互原创 2016-07-04 11:29:49 · 2175 阅读 · 0 评论 -
linux用crontab执行yii脚本不成功
今天遇到一个问题执行crontab 执行失败 ,但是直接请求能成功问了一些大牛为什么会执行失败的原因我总结了一下 不知道具体为什么 1.crontab是写到root用户的,所以crond服务在执行上会读取 root的$PATH变量2.虽然crond里面写了绝对路径 但是 php执行文件里可能再次调用了php相关环境参数或者命令,这时间 它只会查找 系统的可执行目录,并不能继承你写的原创 2016-07-01 16:34:22 · 1882 阅读 · 0 评论 -
php开发那点事儿(一)
一: 不要使用相对路径,要使用根路径这样的代码行很常见:require_once('../../lib/some_class.php');这种方法有很多缺点:● 它首先搜索php包括路径中的指定目录,然后查看当前目录。因此,会检查许多目录。● 当一个脚本被包含在另一个脚本的不同目录中时,它的基本目录变为包含脚本的目录。● 另一个问题是,当一个脚本从c原创 2016-07-12 19:09:05 · 1280 阅读 · 0 评论 -
Defensive Programming in PHP(PHP中的防御性编程)
觉得这篇文章写得很不错 不关乎php觉得其他的语言也是针对的,看完这篇文章有所收获What Does “Defensive Programming” Mean?Defensive programming, simply put, is programming with the intent to anticipate likely failure points. The g翻译 2016-06-30 10:33:17 · 929 阅读 · 0 评论 -
php QQ第三方登录/OAuth2.0验证
qq实现第三方网站登录创建QQ互联账号可用QQ号码登录 登录地址:http://connect.qq.com/QQ互联->管理中心->创建应用1.创建应用2.创建网站注意内容:网站地址一定要加入图中所标注的信息创建成功获取 APP ID 和 APP KEYheader请求public function actionQQ() {//原创 2016-06-28 18:21:31 · 3240 阅读 · 0 评论 -
php 新浪微博第三方登录验证/OAuth2.0
新浪微博实现第三方网站登录创建新浪微博账号可用微博账号登录 登录地址:http://open.weibo.com/网站接入2.立即接入->添加新网站创建成功获取 App key 和 App Sercetheader请求public function actionSina() { $url = 'https原创 2016-06-28 18:35:53 · 3447 阅读 · 0 评论 -
php 微信第三方登录验证
设置微信第三方登录的前提条件是微信开发平台为:服务号用户同意授权,获取code在确保微信公众账号拥有授权作用域(scope参数)的权限的前提下(服务号获得高级接口后,默认拥有scope参数中的snsapi_base和snsapi_userinfo)注意:如果提示scope参数错误 ,说明不是服务号参数说明:参数是否必须说明原创 2016-06-28 17:58:37 · 2047 阅读 · 0 评论 -
高性能网站开发
前一段时间公司的负责人分享了一些高性能网站开发的经验作为一名网站开发者,我们需要站在用户角度来考虑每一个项目,因为前端是与用户最直接的接触,后端是用户等待响应时间的直接体现,而服务器端则会直接影响整个项目的性能,这也就是我们进行高性能网站开发的必要性所在。我们需要时刻检验自己开发的项目是否符合高性能网站的标准,灵活地根据不同的业务使用相应的高性能技术或方法。前端高性能前端高性能原创 2016-06-24 17:36:48 · 2229 阅读 · 0 评论 -
php去掉二维数组中某key的值
eg:二维数据$arr = array( array('game_id'=> 111, 'login_type' => 3, 'num' => 339), array('game_id'=> 111, 'login_type' => 3, 'num' => 339), array('game_id'=> 111, 'login_type' => 3, 'num' => 339));原创 2016-06-24 16:36:35 · 7206 阅读 · 1 评论 -
yii 分页案例
总结一下yii分页的小案例和小知识数据库设计:CREATE TABLE IF NOT EXISTS `statistics` ( `id` int(11) NOT NULL AUTO_INCREMENT, `game_id` int(11) NOT NULL COMMENT '游戏编号', `type` smallint(1) NOT NULL COMMENT '登录或注册类型原创 2016-06-24 16:04:41 · 849 阅读 · 0 评论 -
yii command控制台命令和yiic读取不到redis内容的解决
需求: 需要保存的内容写到redis里面 ,在计划任务中读取到这个redis的值, 定时执行url请求 ,不间断更新缓存内容请求用yii::app()->redis->sadd(key, value);计划任务class ArticleCommand extends CConsoleCommand {}在/protected/commands/ArticleCommand原创 2016-06-02 10:54:31 · 1850 阅读 · 0 评论 -
关于php运算符优先级的几道题
今天看到几个题目比较有意思 分享一下。真的没有看出来自己哪里错了 但是一个没答对今天正好群里有人在问一道php运算符优先级的问题,正好以前也遇到过类似的问题,这里整理一下吧,方便大家理解 以防掉坑:)先来道简单的:$a = 3;if ($a = 5) { $a++;}var_dump($a);// (int)6这里掉坑的同学会认为是3. 注原创 2016-05-19 15:57:14 · 4413 阅读 · 1 评论 -
HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported error
今天在使用file_get_contents函数获取远程机器的一个功能时,提示HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported error错误了,后来发现只要urlencode就可以解决了。eg:$sql = "select * from table";$url = "http://xxxxx/customQ原创 2016-06-21 19:15:33 · 6035 阅读 · 0 评论 -
php开发那点事儿(二)
十一、不要在你的应用程序中gzip输出,让apache来做考虑使用ob_gzhandler?不,别这样做。它没有任何意义。PHP应该是来写应用程序的。不要担心PHP中有关如何优化在服务器和浏览器之间传输的数据。使用apache mod_gzip/mod_deflate通过.htaccess文件压缩内容十二、从php echo javascript代码时使用json_原创 2016-07-14 14:47:28 · 390 阅读 · 0 评论 -
PHP以星号隐藏用户名手机和邮箱
PHP以星号隐藏用户名手机和邮箱原创 2016-11-10 19:34:01 · 695 阅读 · 0 评论 -
php下载文件
php下载文件php下载文件代码块public function downFile() { $filePath = '文件路径'; $filename = basename($filePath); header("Content-type: application/octet-stream"); //处理中文文件名原创 2017-07-24 11:35:07 · 825 阅读 · 0 评论 -
Mac OSX 多php版本共存
Mas OSX php多版本共存原创 2017-05-13 10:42:08 · 3442 阅读 · 0 评论 -
Mac 配置 php-fpm
Mac 自带 php-fpm,在终端执行 php-fpm,会报如下错误:ERROR: failed to open configuration file '/private/etc/php-fpm.conf': No such file or directory (2)ERROR: failed to load configuration file '/private/etc/php-fpm.co原创 2017-05-13 10:47:07 · 1610 阅读 · 0 评论 -
PHPExcel类导出excel表格
PHPExcel类导出excel表格PHPExcel属性设置PHPExcel工具类案例<?php $objExecl = new PHPExcel(); //实例化一个PHPExcel的实例 $this->objExcel->setActiveSheetIndex(); //设置要操作的sheet页 $this->objActSheet = $this->objExce原创 2017-03-25 23:28:29 · 895 阅读 · 0 评论 -
nginx 403 forbidden 二种原因
想必大家在用nginx 多少都会遇到这个问题nginx 403 forbidden ..... 加上nginx的版本引起nginx 403 forbidden有二种原因,今天又遇到了,总结一下1.缺少index.html index.php文件.在项目下面/var/www/xxx项目下面没有存在index.html或者index.php,直接访问域名,找不到文件会报403 forbid原创 2017-01-05 14:46:16 · 2295 阅读 · 0 评论 -
phpExcel导出表格
数据统计需要,导出数据表格,本人使用的PHPExcel扩展<?phprequire_once "PHPExcel.php";require_once 'PHPExcel/IOFactory.php';require_once 'PHPExcel/Writer/Excel5.php';public function actionGetExport() {$resultPHPExcel原创 2016-12-01 19:59:26 · 627 阅读 · 0 评论 -
php按周取时间段
最近做统计需求,按周统计,获取周的时间段代码逻辑:$start = '1478863624';$end = '1480505248';function getweek($start, $end) { $ret = array(); $i = 0; while($start <= $end){ $ret[$i原创 2016-12-01 19:29:34 · 2108 阅读 · 0 评论 -
php输出26个大小写英文字母
get到一个新的技能php输出26大小写字母for($i=65;$i<91;$i++){ echo strtolower(chr($i)).' ';//输出小写字母 echo strtoupper(chr($i)).' ';//输出大写字母}原创 2016-11-10 17:07:50 · 8119 阅读 · 0 评论 -
php去除空格和换行
php去除空格和换行function trimall($str){ $qian=array(" "," ","\t","\n","\r"); return str_replace($qian, '', $str); }原创 2016-06-23 12:12:07 · 14785 阅读 · 0 评论 -
yii url重写去掉index.php
步骤一:打开protected\config\main.php 打开该段注释…'urlManager'=>array( 'urlFormat'=>'path', //使用pathinfo模式,不需要?r= 'showScriptName'=>false, //将代码里链接的index.php隐藏掉。 'rules'=>array( '/'=>'原创 2016-06-23 12:03:59 · 3391 阅读 · 0 评论 -
解决nginx的An error occurred. The page you are looking for is temporarily unavailable错误办法
这篇文章写得超级棒 完美解决了问题 今天访问WordPress程序做的网站,突然出现The page you are looking for is temporarily unavailable错误,服务器环境为: Linux+Nginx+MySQL+PHP。于是上网查找解决方法,找到以下两个解决方法,作为参考: 解决方法一:转载 2016-06-21 19:18:32 · 29289 阅读 · 4 评论 -
php正则总结
1 . 校验密码强度密码的强度必须是包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间。^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$2. 校验中文字符串仅能是中文。^[\\u4e00-\\u9fa5]{0,}$3. 由数字、26个英文字母或下划线组成的字符串^\\w+$4. 校验E-Mail 地址原创 2016-07-27 11:49:17 · 604 阅读 · 0 评论 -
php 根据某数组key计算和
数据原型:{"game_id":"111","type":2,"num":504},{"game_id":"111","type":6,"num":8154},{"game_id":"111","type":41,"num":3426},{"game_id":"111","type":42,"num":45},{"game_id":"111","type":43,"num":1873}把t原创 2016-07-15 15:17:13 · 1442 阅读 · 0 评论 -
php中in_array需要注意的一点
示例$needle = '1abc';$haystack = array(1,2,3);var_dump(in_array($needle, $haystack));解释根据官方文档函数in_array的描述bool in_array(mixed $needle, array $haystack [,bool strict FALSE])在haystack中搜索ne原创 2016-05-19 15:17:01 · 2870 阅读 · 0 评论 -
php生成随机字符串
php生成随机字符串,可做验证码Fun:/*** 生成随机字符串* @param int $len* @return string*/function genRandomString($len) { $chars = array( "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m原创 2016-05-26 10:38:55 · 2384 阅读 · 0 评论 -
php 把非数组转换为数组方法
public function object_array($array) { if(is_object($array)) { $array = (array)$array; } if(is_array($array)) { foreach($array as $key=>$value) {原创 2015-10-15 09:52:24 · 521 阅读 · 0 评论 -
php循环创建文件
php创建文件public function mkFolder($path) { if(!is_readable($path)) { is_file($path) or self::mkFolder(dirname($path)); mkdir($path,0777); } }原创 2015-11-11 14:22:54 · 971 阅读 · 0 评论 -
php下载图片或者文件
php下载文件或者图片/***$fileUrl 要下载文件的路径 $savePath要保存的下载文件的路径地址*/public function downloadPic($fileUrl, $savePath){ $content = file_get_contents($fileUrl); file_put_contents($savePath,原创 2015-11-11 14:21:24 · 463 阅读 · 0 评论 -
xx网站爬虫
利用simple_html_dom的采集数据实例,这是一个PHP的库,上手很容易。下载地址:https://github.com/samacs/simple_html_dom<?php//软件分类include_once 'simple_html_dom.php';$conn=mysql_connect("127.0.0.1", "root", "root");set_time_l原创 2015-05-19 15:05:22 · 6776 阅读 · 0 评论