php开发

[置顶] Aiiphp框架测试版发布,欢迎测试!

[置顶] Linux常用运维命令和linux常用管理操作命令(整理)

[置顶] Linux/Window服务器安全配置等常用软件下载列表

mac 安装composer的方法

使用 curl 指令下载:


curl -sS https://getcomposer.org/installer | php


或是沒有安裝 curl ,也可以用 php 指令下载:


php -r "readfile('https://getcomposer.org/installer');" | php


或是手动下载 composer.phar


当你下载了 composer.phar 后,可以将它放在目录中,但每次当你建立新目录时,

你必須再复制一个副本到新目录中,这样比较麻烦。所以最佳做法是将它放到 usr/local/bin 目录中中,

成为全域指令。


mv composer.phar /usr/local/bin/composer


这样就可以直接在终端使用composer命令了。。。。

关键词: composer安装

PHP过滤掉Emoji表情字符

这段代码在 stackoverflow 上搜到, 据说是 Smarty 用的.

各位需要的可以试试

function smarty_modifier_emojistrip($string)
{       
    return preg_replace('/\xEE[\x80-\xBF][\x80-\xBF]|\xEF[\x81-\x83][\x80-\xBF]/', '', $string);
}


Discuz中 uc.php文件 uc-key执行漏洞修复方法

Discuz中 uc.php文件 uc-key执行漏洞修复方法

DZ uc.php文件 uc-key漏洞修复方法

主要修复方法参照:

dz3.2 最新版本:

文件:

api/uc.php

1、约241行:


function updatebadwords($get, $post) {
global $_G;

if(!API_UPDATEBADWORDS) {
return API_RETURN_FORBIDDEN;
}

$data = array();
if(is_array($post)) {
foreach($post as $k => $v) {
//dz官网修复方法 uc-key方法。 6.24
if(substr($v['findpattern'], 0, 1) != '/' || substr($v['findpattern'], -3) != '/is') {
$v['findpattern'] = '/' . preg_quote($v['findpattern'], '/') . '/is';
}
//end
$data['findpattern'][$k] = $v['findpattern'];
$data['replace'][$k] = $v['replacement'];
}
}



» 阅读全文

关键词: 漏洞修复 , uc-key漏洞

微信支付在某些情况下加载请求非常慢的问题分析和解决办法

今天在开发公司的项目过程,在使用微信支付的时候,请求非常慢。

主要请求慢的原因是微信支付需要授权,获取openid,

 $tools = new \JsApiPay();
$openId = $tools->GetOpenid();
了解微信的人都知道,微信的授权获取微信openid 需要进行2各小步骤,第一步先获取code,

第二步拿到code,再去请求第二个接口,获取openid。

由于微信授权,普通的浏览器是看不到效果的,所以可以通过抓包的时候来搞,抓包软件,我mac用的是青花瓷

通过一步步分析发现。原来是在第二部的时候,请求非常慢:主要请求接口域名是:

https://api.weixin.qq.com

但是我其他服务器都是好好的,非常快啊,为何部署支付的服务器这么慢呢?

腾讯不应该出现这么慢的服务器啊。

于是分别在2个服务器上ping了下。最后对比下发现,虽然本地和服务器上ping返回的time差不多的,

但是,明显服务器上返回1个ping,本地都返回6~9个ping了,说明还是服务器问题。

如果同时ping  ip的话,就差不多,进而想到,很可能是服务器设置的DNS的问题,

服务器DNS解析的微信接口的API地址非常慢。

ssh 登录下服务器:

看下,dns是使用安徽的一个老的dns,和谷歌的dns,果断换成腾讯的dns和阿里云的dns

搜嘎。感觉速度非常快了。

如果各位遇到这个问题,记得这么去排查下。

这个主要是由微信支付引起的一个微信授权api的问题。


PHP CURL实现并发多线程的抓取url地址

PHP CURL实现并发多线程,主要就是以:curl_multi_ * 的类库。一个简单的demo

另外感觉curl多线程没有想想那么的好,各位适应php的扩展 pthread

$urls = array(
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',



» 阅读全文

砸金蛋:PHP+jQuery实现的砸金蛋中奖功能

砸金蛋:PHP+jQuery实现的砸金蛋中奖功能。当然案例是3个,你也可以改为1个金蛋,进行抽奖

1.png - 大小: 75.65 KB - 尺寸: 1124 x 688 - 点击打开新窗口浏览全图

抽奖算法:



» 阅读全文

关键词: 砸金蛋

刮刮卡:利用HTML5的画布Canvas的实现移动端刮刮卡效果

我们利用HTML5的画布canvas,结合其提供的API,在Canvas元素上绘制一个灰色蒙层,然后通过检测用户鼠标移到和手势来绘制一个透明的图形,这样就能看到Canvas背景下的真实图片,就达到刮刮卡效果。
HTML
我们只需要在页面中加入canvas标签元素,其他的就看javascript的了。注意canvas元素是HTML5才有的元素,运行在支持HTML5的现代浏览器上,特别是移动。

1.png - 大小: 40.87 KB - 尺寸: 966 x 542 - 点击打开新窗口浏览全图

DEMO:


http://www.jincon.com/download/guaguaka/

» 阅读全文

关键词: canvas , 刮刮卡

PHP+jQuery实现的大转盘抽奖程序

PHP+jQuery实现的大转盘抽奖程序

1.png - 大小: 137.97 KB - 尺寸: 1122 x 876 - 点击打开新窗口浏览全图

演示地址:

http://www.jincon.com/download/lottery/

抽奖算法部分:

» 阅读全文

Total: 47123456Next ›