PHP
夏凯
嚼得菜根者百事可为
展开
-
YII2 请求源码分析
YII 一次路由请求1、任何请求都会先到web/index.php 看里面如何调转的。(new yii\web\Application($config))->run(); 可见调用了YII web下的 Application容器的run方法。2.找到web下的Application容器。全局搜索run方法 缺找不到。发现他继承base下的Application。3.找到base下的原创 2016-06-21 17:29:53 · 1502 阅读 · 0 评论 -
ci phpexcel读取excel文件数据
一:下载最新的phpexcel http://phpexcel.codeplex.com/releases/view/26479下载phpexcel1.7.5 解压出来放在根目录。在CI控制器中直接写方法function read_excel(){ set_include_path(get_include_path() . PATH_SEPARATOR . '原创 2014-04-11 17:49:41 · 4235 阅读 · 0 评论 -
PHP 获取本年、本周、本月、本日的开始和结束时间
function getddd($type = 1) { if($type == 1) { $d0 = mktime (0,0,0, date( "m "), date( "d "), date( "Y ")); //创建日开始时间 $d1 = mktime (23,59,59, date( "m "), date( "原创 2013-07-05 16:32:53 · 3844 阅读 · 0 评论 -
php 数组去重 (一维数组与二维数组)
数组中重复项的去除一维数组的重复项: 使用array_unique函数即可,使用实例如下: $aa=array("apple","banana","pear","apple","wail","watermalon"); $bb=array_unique(原创 2014-04-22 16:18:53 · 1640 阅读 · 0 评论 -
归并排序(php)
一:优点。 1. 快捷和稳定原创 2014-04-19 22:17:53 · 989 阅读 · 0 评论 -
php生成工作日志
$fp=fopen("log.txt","a");$str=date("Y-m-d H:i:s")."\r\n";fputs($fp,$str);fclose($fp);原创 2014-03-18 09:32:48 · 2242 阅读 · 0 评论 -
PHP的GD函数库图形类函数(创建缩略图、给图片加水印、给图片加文字、画布划线)
本笔记主要是关于GD(GRAPHICS DRAW)的函数笔记。这个开放的动态源码在PHP5是被默认安装的,要激活的话还是需要修改PHP.INI文件,去掉相关注释。后面一些例子包括创建缩略图、给图片加水印、给图片加文字、画布划线等。有例图的哦!在PHP中创建一个图像通畅需要以下4个步骤:a.创建一个背景图像,以后所有操作都是基于此背景。b.在图像上绘图轮廓或者输入转载 2014-03-17 15:14:20 · 1734 阅读 · 0 评论 -
php获取远程图片并保存本地
function grabImage($url, $filename = '') { if($url == '') { return false; //如果 $url 为空则返回 false; } if($filename == '') { $filename = time().".jpg"; //以时间戳另起名 }原创 2014-03-14 22:37:33 · 926 阅读 · 0 评论 -
file_get_contents读取 https 请求
如果出现 读取不到数据: $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET"$re=file_get_contents($url);4print_r($re)原创 2014-03-10 16:22:45 · 8415 阅读 · 0 评论 -
五种常见的 PHP 设计模式
设计模式 一书将设计模式引入软件社区,该书的作者是 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides Design(俗称 “四人帮”)。所介绍的设计模式背后的核心概念非常简单。经过多年的软件开发实践,Gamma 等人发现了某些具有固定设计的模式,就像建筑师设计房子和建筑物一样,可以为浴室的位置或厨房的构造方式开发模板。使用这些模板或者说转载 2016-06-25 14:57:06 · 479 阅读 · 0 评论 -
ubuntu 下修改phpmyadmin中的默认超时时间
phpmyadmin在使用过程中经常出现“登陆超时(1440秒未活动),请重新登录”,很烦解决方法如下:修改php.ini,找到session.gc_maxlifetime = 1440将数值改大就行了,然后使之生效试验了一下,结果不好使。最终解决方案:找到 phpMyAdmin / libraries / config.default.ph原创 2013-11-27 17:34:32 · 1516 阅读 · 0 评论 -
ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php
ThinkPHP 作为 PHP 框架,是单一入口的,那么其原始的 URL 便不是那么友好。但 ThinkPHP 提供了各种机制来定制需要的 URL 格式,配合 Apache .htaccess 文件,更是可以定制出人性化的更利于 SEO 的 URL 地址来。.htaccess文件是 Apache 服务器中的一个配置文件,它负责相关目录下的网页配置。我们可以利用 .htaccess 文件的原创 2014-03-07 21:30:45 · 2517 阅读 · 0 评论 -
[YII2]Unable to verify your data submission
Yii2表单重复提交时报错:yii2 Unable to verify your data submission遇到这种情况,是因为YII2的防止csrf攻击,你则不能多次提交相同的表单。如果你希望当前可以多次重复提交,可以在当前提交的表单controller中临时把enableCsrfValidation属性设置为false。例如:原创 2016-06-17 17:29:01 · 738 阅读 · 0 评论 -
[yii2]不加载layout布局文件的实现方法
Yii框架默认渲染模板的时候会渲染布局,新创建的项目也包含了3个默认的布局:main.php column1.php column2.php,并且默认创建了一个公共控制器 Controller.php(在components目录下),默认的SiteController.php是继承的这个Controller.php,这个控制器指定了布局文件为column1.php。 让我们看看渲染一个模板原创 2016-06-16 14:07:49 · 8476 阅读 · 0 评论 -
[YII2] 自定义组件,在YII框架中正常使用
1、自定义help工具类。如下图2、在控制层DemoController里调用。代码如下3、[测试]。在浏览器中输入:http://localhost/echo/web/index.php?r=demo/echo1 。结果如下图:提示 无法识别的help应用4、[原因]。虽然代码已经拷贝到项目中,但没有在YII中声明help这个组件,所以不能直接使用5、[原创 2016-06-16 09:58:20 · 2392 阅读 · 1 评论 -
Symfony2Book01:Symfony2和HTTP基础
允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://firehare.blog.51cto.com/809276/585396原文出处:http://symfony.com/doc/current/book/from_flat_php_to_symfony2.html原文作者:Symfony.com授权许可:创作共用协议翻译人转载 2013-06-08 09:19:15 · 1203 阅读 · 0 评论 -
Symfony2Book02:当纯PHP遭遇Symfony2
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。转载出处:http://firehare.blog.51cto.com/809276/585396原文出处:http://symfony.com/doc/current/book/from_flat_php_to_symfony2.html原文作者:Symfony.com转载 2013-06-08 10:04:31 · 1853 阅读 · 0 评论 -
Thinkphp 取得最后的Sql 语句操作
$User = M('User');// 实例化User数据模型(M方法里的User为数据表名,首字母大写)echo $User->getLastSql();原创 2013-06-03 14:37:55 · 1389 阅读 · 0 评论 -
用Thinkphp写的简单程序在命令行执行(非 Thinkphp 下的cli模式 而是php下的命令模式)
本来是打算用Thinkphp下的cli命令模式 运行程序的,但不知道哪里出错了,没法跑起来 于是就有了下篇代码。首先 用Thinkphp写个简单的程序,保证页面上访问输出正常。再在命令行 输入 php index.php --start=1 --end=9 (--start=1 --end=9 参数的传递 这里的--代表标识符,)下面是部分代码:tp/Conf/config.ph原创 2013-06-03 22:30:48 · 8695 阅读 · 0 评论 -
新开专栏《ThinkPHP开发》之thinkphp的本地安装------Echo
首先。当然是去thinkphp官网(http://www.thinkphp.cn/)下载最新的代码(小编这次下的是thinkphp3.1.3完整版)如图:原创 2013-11-06 22:44:57 · 1676 阅读 · 0 评论 -
一段简单的自定义微信公众号菜单代码
$appId = $_POST['appId']; $appSecret = $_POST['appSecret']; $get_url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='+$appId+'&secret='+$appSecret;原创 2014-03-10 10:08:46 · 2101 阅读 · 0 评论 -
php加水印简单功能
$image =imagecreatefromjpeg("xk.jpg");// $image =imagecreatefrompng("xk.png");$watermark =imagecreatefrompng("002.png");$width =imagesx($watermark);$height = imagesy($watermark);//将水印加到图片左上角原创 2014-03-14 22:10:58 · 978 阅读 · 0 评论 -
php 操作数组 (合并,拆分,追加,查找,删除等)
1. 合并数组array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加。其形式为:Php代码 array array_merge (array array1 array2…,arrayN) 这个函数将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后原创 2013-12-14 08:59:47 · 1014 阅读 · 1 评论 -
Ubuntu 12.04 下 php 安装 imageMagick 扩展
1. 打开终端 terminal2. 如果没有安装 pear请先执行以下命令安装 :sudo apt-get install php-pear php5-dev3. 安装 ImageMagick :sudo apt-get install imagemagick libmagickwand-dev4. 执行 pecl 安装 imagick :原创 2013-12-09 13:44:29 · 1834 阅读 · 0 评论 -
Ubuntu Apache多站点的配置
大致步骤如下:一.修改本机的hosts文件: 127.0.0.1 localhost 127.0.0.1 www.bss360.com 127.0.0.1 www.cmsdev.com 1. cd /etc 2. sudo vim hosts 3. 添加上面两条信息(原创 2013-12-02 15:49:55 · 1601 阅读 · 0 评论 -
如何用PHP把EXCEL表导入Mysql数据库
有时写程序时后台要求把大量数据导入数据库中,比如考试成绩、电话簿等一般都是存放在excel中的数据,这时我们可把excel导出成csv文件,然后通过以下程序即可批量导入数据到数据库中上传cvs并导入到数据库中,测试成功(部分代码不规范,如PHP_SELF那里要改写成$_SERVER["PHP_SELF"] )PHP代码 $fname = $_FILES['MyFile']['nam原创 2013-07-25 16:38:07 · 1601 阅读 · 0 评论 -
PHP中判断字符串是否含有中文
1.测试一$str = '中文测试'; if (preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/", $str, $match)) { echo '全部是汉字'; } else { echo '不全是汉字';}当$str = '中文测试'; 时输出"全部是汉字";当$str = '中a文3测试'; 时输原创 2013-08-06 15:26:38 · 1259 阅读 · 0 评论 -
php编写微信公众平台消息处理接口教程
有许多同学都在群里问如何使用PHP编写微信公众平台处理接口教程。以下,微市场就为大家整理了处理消息的教程。希望能对大家有帮助!一. 创建接口文件 微信开发者模式首先需要我们有自己的服务器,很多同学没有自己的服务器,那么可以去淘宝买虚拟空间,几块钱就有了,也可以用新浪SAE。具体怎么弄可以去百度一下,这里我们就不介绍了。 二. 写接口文件内部方法 然后,我原创 2013-07-28 20:10:49 · 2175 阅读 · 0 评论 -
php模拟post提交数据,用处很多,可用来网站的采集,登陆等等
02// PHP POST数据的三种方法03// php有三种方法可以post数据,分别为Curl、socket、file_get_contents:04 05 06/**原创 2013-07-26 16:42:03 · 1655 阅读 · 0 评论 -
字符串的双向转换
$find = array("拜会","拜见");$replace = array("拜见","拜会");$str = "拜会和拜见好久没见面了,这天拜见去拜会家找拜会,拜会他老爸说拜会出学校了,马上就回来,拜会他老爸让拜见在家坐会,拜见还没等拜会他老爸说完就去学校找拜会了";echo strtr($str, array_combine($find, $replace));//ar原创 2012-06-16 15:05:53 · 1605 阅读 · 0 评论 -
ubuntu 本地安装 destoon
安装说明系统运行环境:可用的httpd服务器(如 Apache、IIS 等) / PHP 4.3.0 及以上 / MySQL 4.0.0 及以上第一步:上传本软件包内destoon目录下的所有文件及目录至您的服务器目录。第二步:如果安装Destoon的服务器目录访问地址为http://www.abc.com/,则访问http://www.abc.com/install/进入程序原创 2013-12-26 11:21:57 · 1581 阅读 · 0 评论 -
【php】php程序员的年终总结
偶尔看到了一个PHP代码调侃的年终总结,写得还蛮有趣的,这里也转一下。程序员就是要风趣,头脑灵活,写出这段代码的哥们一定是个蛮有趣的人。view sourceprint?01 02 # 兄弟们, 第一步写什么? 03 04 # 这年头上帝都靠不住, 安全重要 05 error_reporting(0); 06 07 # 年终报告规定用语, 这一定得用呀, 不转载 2014-01-14 16:41:52 · 2614 阅读 · 0 评论 -
PHP面试题汇总附答案
简述题(50分)()1、用PHP打印出前一天的时间格式是2006-5-10 22:21:21(2分)echo date('Y-m-d H:i:s', strtotime('-1 day'));或者$yesterday = time() - (24 * 60 * 60);echo 'today:'.date('Y-m-d H:i:s')."\n";echo 'yesterda转载 2014-03-07 22:24:59 · 2135 阅读 · 0 评论 -
简单易懂的codeigniter数据库基本操作
现在开始,首先现在CI框架到自己的服务器目录下并配置config/config.phpPHP复制代码$config['base_url'] = 'http://localhost:90/CI/';复制代码,接着下来配置数据库在config/databases.php我做练习配置如下PHP复制代码$db['default'][转载 2014-02-20 15:14:58 · 1006 阅读 · 0 评论 -
CodeIgniter 的基本代码解析
先来介绍一下 CodeIgniter 的基本架构好了, 所以先来说明一下 CI 的页面是怎么做的。由于使用 MVC 架构, 所以最主要的就是 Controller, 程式透过 Controller 来呼叫 Model 存取资料库, 然后在指定 View 输出, 这样一来, Controller 就可以变得很简单。以制作 Blog 为例, Blog 的首页通常都会显示最新的 10 篇文章, 就以转载 2014-02-20 15:05:23 · 617 阅读 · 0 评论 -
5种常见PHP实现URL地址跳转代码
常见PHP实现URL地址跳转代码1、php跳转代码一句话式:12$url = $_GET['url']; 3Header("Location:$url"); 4?>注:假如保存原创 2014-02-12 21:21:47 · 19279 阅读 · 0 评论 -
nginx ubuntu 下正常解析php
背景:安装nginx,按照php5-fpm(出了个warning)访问php,出现gateway错误nginx log如下:2014/02/12 16:48:50 [crit] 13365#0: *8 connect() to unix:/var/run/php5-fpm.sock failed (2: No such file or directory原创 2014-02-12 17:00:44 · 1600 阅读 · 0 评论 -
在本地计算机上配置CodeIgniter_2.1.4
为了学习CodeIgniter,第一步就是要在自己的电脑上把它跑起来,在服务器上调试太不方便了。本文首先介绍codeIgniter的目录结构,然后介绍wamp+codeIgniter的配置方法。本文假定你已经装好了WAMP。1.CodeIgniter目录结构下载CodeIgniter_2.1.4, 放到wamp的www目录下,此时目录中有两个文件夹和两个文件:如图:原创 2014-02-12 22:20:16 · 1367 阅读 · 0 评论 -
PHP环境下Memcache的使用方法
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。Memcache官方网站:http://www.danga.com/转载 2014-02-11 18:08:53 · 647 阅读 · 0 评论 -
How to Install CodeIgniter on an Ubuntu 12.04 Cloud Server
About CodeIgniterCodeIgniter is an open source web application framework for PHP that is small in size but very powerful in utility. Its goal is to enable people to write their applications much转载 2014-02-20 23:22:48 · 1225 阅读 · 0 评论