php
文章平均质量分 73
风水工程师
高达男
展开
-
discuz核心函数库function_core的函数注释
/** * 系统错误处理 * @param $message 错误信息 * @param $show 是否显示信息 * @param $save 是否存入日志 * @param $halt 是否中断访问 */function system_error($message, $show = true, $save = true, $halt = true) {原创 2016-07-29 14:18:28 · 1657 阅读 · 0 评论 -
DISCUZ!X2.5如何限制会员每天发帖数量
作为一位论坛管理员,最烦恼的莫过于垃圾帖子和大量无意义的灌水帖子。我们都会想尽办法与垃圾贴、灌水贴、广告贴做斗争,您解决不了这些问题,那么你的论坛永远也不会强大,看到满世界的这类垃圾帖子,试问,还有谁会耐着性子,继续浏览下去?站长们在想尽办法来防止垃圾帖子的泛滥、康盛的官方开发团队也在不断提供新方法、新功能为我站长供应强大的“弹药”,如防水墙,就是这种产物,而今天的重点不是讨论如何防水墙的,无忧主原创 2016-06-17 11:32:24 · 3487 阅读 · 0 评论 -
DOM事件绑定与行为阻止
在form表单上绑定onsubmit事件,并在对应的事件函数中return false; 以阻止表单的提交.0级DOM绑定方式,可以阻止, 但2级DOM绑定方式不能阻止.0级DOM代码如下, 可以阻止.form> p>input type="submit" value="提交">p>form>script> var fm=document.getElementsB原创 2016-07-13 18:47:10 · 1330 阅读 · 0 评论 -
教你编译PHP7 (nginx+mysql+php7)
操作系统: CentOS Linux, 6.5 64位服务器: 阿里云空的操作系统,我们从0开始.在开始前,请确保你的Linux已联网,已联网,已联网!# 安装编译工具:yum install gcc automake autoconf libtool gcc-c++# 安装基础库yum install gd zlib zlib-devel openssl openssl原创 2016-07-13 18:44:37 · 2167 阅读 · 0 评论 -
Nginx+php-fpm 502 504问题
解决办法:调整Nginx 和 php-fpm的参数如下# nginx.conf location段unix:/usr/local/php/var/run/php-fpm.sock# fastcgi.conf 修改内容fastcgi_buffers 32 128k;fastcgi_buffer_size 128k;fastcgi_busy_buffers_size 256k;原创 2016-07-13 18:42:01 · 322 阅读 · 0 评论 -
nginx支持pathinfo模式
Nginx服务器默认不支持pathinfo, 在需要pathinfo支持的程序中(如thinkphp),则无法支持”/index.php/Home/Index/index”这种网址.网上流传的解决办法很多,这里提供一种比较简洁的写法(只需要改动2行代码)# 典型配置location ~ \.php$ { root html; fastcgi_pass原创 2016-07-13 18:38:54 · 301 阅读 · 0 评论 -
discuz X论坛技术架构 MVC结构浅析
摘自:http://yeyuan.iteye.com/blog/930727PS:本人刚接触discuz论坛,php水平有限,当中的理解,如有不正确之处,欢迎指出 ------------------------------------第一个文件相当于控制器(C),比如forum.php(根目录下,相当于大模块,应该再加上小模块控制 module),功能是将相应的请求发送到相应原创 2016-06-15 18:28:23 · 1509 阅读 · 0 评论 -
核心类
error_reporting(E_ALL);define('IN_DISCUZ', true);define('DISCUZ_ROOT', substr(dirname(__FILE__), 0, -12));define('DISCUZ_CORE_DEBUG', false);define('DISCUZ_TABLE_EXTENDABLE', false);原创 2016-06-15 18:07:24 · 249 阅读 · 0 评论 -
curl
/** Get提交获取数据 * @desc 获取access_token * @return String access_token */ functiongetAccessToken(){ $AppId= '1232assad13213123'; $AppSecret= '2312312321adss31232原创 2016-07-12 10:44:05 · 323 阅读 · 0 评论 -
win7下安装yii2高级模板全过程
重装系统就安装yii2又遇到了很多问题,每次都不一样,上次安装由于没留下相关资料这次就把全部的安装过程记录下来了,上一次安装时四五个月之前了,版本也更新了,问题也是一些,以后每次安装都会记录下来,总结一下出现的问题,有个前提就是如果使用过composer安装必须能够翻墙,否则一切都是空谈。安装流程:第一步:下载composer,并且安装composer,安装过程中选择php.exe原创 2016-07-15 11:35:27 · 1093 阅读 · 0 评论 -
关于mysql函数GROUP_CONCAT
版权声明:本文为博主原创文章,未经博主允许不得转载。[sql] view plain copy "font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">GROUP_CONCAT()是MySQL数据库提供的一个函数,通常跟GROUP BY一起用:原创 2016-07-04 20:29:59 · 268 阅读 · 0 评论 -
微信公众平台OAuth2.0网页授权php示例
1、配置授权回调页面域名,如 www.aaa.com 2、模拟公众号的第三方网页,fn_system.phpPhp代码 if(emptyempty($_SESSION['user'])){ header("Location:http://www.aaa.com/uc/fn_wx_login.php"); }e原创 2016-07-08 10:38:02 · 592 阅读 · 0 评论 -
Yii2.0 behaviors方法使用
(1)控制器 behaviors 过滤数据需要引入如下文件12use yii\filters\AccessControl;use yii\filters\VerbFilter;首先:什么是过滤器?过滤器就是对不同用户角色的控制; 如(游客->最普通的平民,用户->已经注册的原创 2016-06-21 18:44:38 · 2511 阅读 · 0 评论 -
behaviors()行为调用
在Yii2的几乎每个controller中,我们都会看到一个函数behaviors(),通常,我们用这个函数来配置控制器的权限,例如:public function behaviors() { return [ 'access' => [ 'class' => AccessControl::classNam原创 2016-06-21 18:38:42 · 1681 阅读 · 0 评论 -
yii2.0 行为
行为(Behavior)使用行为(behavior)可以在不修改现有类的情况下,对类的功能进行扩充。 通过将行为绑定到一个类,可以使类具有行为本身所定义的属性和方法,就好像类本来就有这些属性和方法一样。 而且不需要写一个新的类去继承或包含现有类。Yii中的行为,其实是 yii\base\Behavior 类的实例, 只要将一个Behavior实例绑定到任意的yii\base\Compo原创 2016-06-21 17:11:44 · 4140 阅读 · 2 评论 -
yii2.0 事件
事件(Event)使用事件,可以在特定的时点,触发执行预先设定的一段代码,事件既是代码解耦的一种方式,也是设计业务流程的一种模式。现代软件中,事件无处不在,比如,你发了个微博,触发了一个事件,导致关注你的人,看到了你新发出来的内容。对于事件而言,有这么几个要素:这是一个什么事件?一个软件系统里,有诸多事件,发布新微博是事件,删除微博也是一种事件。谁触发了事件?你发的微博,就是你触发的事原创 2016-06-21 17:10:19 · 3617 阅读 · 0 评论 -
关于PHP中的定时任务crontab详解
最近遇到很多关于定时任务的,说实话PHP脚本本身也有一个两个函数可以结合做成定时任务,但是效果很一般,首先选择的还是系统计任务计划好一些,不管是win还是Linux系统都具备任务计划功能,而我们要做的就是用好这些功能,下面是Linux中的定时任务详解,由于太长,直接找到拷贝了一下,有需要的可以看一下,我们就是利用这个,定时执行我们的具体PHP文件,废话不多说~cron是一个linux下的定时执原创 2016-07-06 09:55:17 · 2962 阅读 · 0 评论 -
矩阵
function snake($row = 5, $col = 5){ // 结果集 $res = array(); // 初始值 $start = 1; // 当前遍历层数 $flag = intval(($row + 1) / 2); for ($i = 1; $i $startX = $i -原创 2016-07-27 10:56:46 · 320 阅读 · 0 评论 -
MySQL中函数CONCAT及GROUP_CONCAT
group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。比较抽象,难以理解。通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。group_concat函数应该原创 2016-07-04 20:33:03 · 265 阅读 · 0 评论 -
mysql when then 用法
select case id when 5 then 1 when 10 then 2 when 4 then 3 end as row ,id from 表明 where (ID =7 )or (ID=8)or (ID=2)or原创 2016-07-22 16:57:56 · 1681 阅读 · 0 评论 -
git 基本命令
Git 的基本命令现在我们有了本地和远程的版本库,让我们来试着用用Git的基本命令:git pull:从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地,例如:'git pull origin master'就是将origin这个版本库的代码更新到本地的master主枝,该功能类似于SVN的updategit add:是将当前更改或者新增的文件加入到Git的索引原创 2016-06-13 15:57:22 · 437 阅读 · 0 评论 -
php 设计模式
场景:一个气象站点,当温度、湿度或气压发生改变时都要像订阅了该气象服务的用户推送提醒,假设用户拥有三种电子产品:mac、iphone和apple watch。第一版的设计代码如下:WeatherData.php<?php/** * 气象站类,用于提供气象数据,数据变化时及时推送至用户的设备 * * @author ben * */class原创 2016-06-12 18:40:20 · 298 阅读 · 0 评论 -
大并发大数量中的MYSQL瓶颈与NOSQL介绍
NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面。今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于NoSQL方面的经验和体会。非常荣幸能受邀在InfoQ开辟这样一个关于NoSQL的专栏,InfoQ是我非常尊重的一家技术媒体,同时我也希望借助InfoQ,在国内推动NoSQL的发展,希望跟我原创 2016-04-29 11:15:28 · 941 阅读 · 0 评论 -
try catch的用法
public function __construct($database){ try { global $DATABASE_LIST; $this->server=$DATABASE_LIST[$database]['server']; $this->port=$DATABASE_LIST[$data原创 2016-04-29 11:11:36 · 429 阅读 · 0 评论 -
获取用户 ip
public static function isPost() { return $_SERVER ['REQUEST_METHOD'] === 'POST' ? TRUE : FALSE; } public static function isGet() { return $_SERVER ['REQUEST_METHOD']原创 2016-04-29 11:08:36 · 436 阅读 · 0 评论 -
PHP 初始化文件 自动加载 面向过程
define('ROOT' , realpath(__DIR__ . '/..'));function autuload($class) {if( substr($class , -5) === 'Model' && (strlen($class) > 5) ) {require(ROOT . '/Model/' . $class . '.php');} else {r原创 2016-05-10 13:35:38 · 485 阅读 · 0 评论 -
联合查询 thinkPHP
public function trace() {$page = I('get.p');$page = $page ? $page : 1;$start = ($page - 1) * 10;$where['a.uid'] = session('ip');if (I('get.')) {$data = I('get.');$this->assign('get', $da原创 2016-05-10 16:58:28 · 1217 阅读 · 0 评论 -
thinkphp 返回ajax 及switch
/** * Ajax方式返回数据到客户端 * @access protected * @param mixed $data 要返回的数据 * @param String $type AJAX返回数据格式 * @param int $json_option 传递给json_encode的option参数 * @return vo原创 2016-05-10 16:05:11 · 456 阅读 · 0 评论 -
swith case
if($method->getNumberOfParameters()>0 && C('URL_PARAMS_BIND')){switch($_SERVER['REQUEST_METHOD']) {case 'POST':$vars = array_merge($_GET,$_POST);break;case 'PUT':parse_str(file_get_con原创 2016-05-10 16:01:07 · 355 阅读 · 0 评论 -
thinkPHP
public function getGroups($uid) { static $groups = array(); if (isset($groups[$uid])) return $groups[$uid]; $user_groups = M() ->table($this->_conf转载 2016-05-10 15:56:18 · 279 阅读 · 0 评论 -
PHP数据传输加密解密
class OSAEncrypt{ public static function encrypt($value){ if(!$value){return false;} //$key = 'WhatAFuck1ngDay!'; $key = OSA_ENCRYPT_KEY; $text = $value; $原创 2016-04-29 11:29:44 · 3290 阅读 · 0 评论 -
MongoDB入门教程(一)
MongoDB简介MongDB是一个高性能,开源,无模式的文档型NosQL数据库。主要功能特性:1.文件存储格式BSON(一种json的扩展) 2.模式自由 数据格式不受限了表的结构 3.支持动态查询 4.支持完全索引 5.支持复制(其主从复制)和故障恢复 6.使用高效的二进制数据存储,包括大型对象 7.自动处理碎片,以支持云计算层次的扩展。8.支持原创 2016-04-29 12:07:52 · 519 阅读 · 0 评论 -
linux安装apache、mysql、php指导
gg原创 2016-06-12 18:34:21 · 427 阅读 · 0 评论 -
邮箱验证函数
function isemail($email) { return strlen($email) > 6 && strlen($email) }原创 2016-06-07 18:25:38 · 390 阅读 · 0 评论 -
php 父类Model实现
class Model {protected $db = null;protected $table = '';protected $pk = '';protected $fields = array();protected $data = array();protected $options = array('fields'=>'*' , 'where'=>'','gro原创 2016-05-10 13:29:41 · 573 阅读 · 0 评论 -
php global 的用法
对对对原创 2016-06-07 18:02:37 · 427 阅读 · 0 评论 -
https://segmentfault.com/a/1190000002645623
sdvsdv原创 2016-06-02 11:59:23 · 841 阅读 · 0 评论 -
配置文件定义常量 config.inc.php
define('ACCESS', 1); error_reporting(E_ALL ^ E_NOTICE);// autoload 使用常量define('ADMIN_BASE', dirname (__FILE__) . '/../../include');define('ADMIN_BASE_LIB', ADMIN_BASE . '/lib/');define('ADMI原创 2016-04-29 15:51:45 · 2046 阅读 · 0 评论 -
定义常量类
class ErrorMessage { const SUCCESS = "操作成功"; const ERROR = "操作失败,服务器异常"; const NEED_PARAM ="缺少必填项"; const HAVE_USER ="账号组被使用,不能删除;若要删除,请先将属于该组的用户划拨到其它账号组"; co原创 2016-04-29 15:38:03 · 587 阅读 · 0 评论 -
PHP extract() 函数的用法
将键值 "Cat"、"Dog" 和 "Horse" 赋值给变量 $a、$b 和 $c:<?php$a = "Original";$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");extract($my_array);echo "\$a = $a; \$b = $b; \$c = $c";?>原创 2016-04-29 11:48:46 · 1010 阅读 · 0 评论