
PHP基础
文章平均质量分 65
醉品人生
这个作者很懒,什么都没留下…
展开
-
PHP常用函数小全
来源:http://www.php100.com/html/webkaifa/PHP/PHP/2013/0321/12247.html PHP的一些常用函数 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解包。 uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID。 time_sleep_until() 函数延迟代码执行直...原创 2013-03-28 21:27:56 · 99 阅读 · 0 评论 -
提高php代码质量 36计
1.不要使用相对路径常常会看到:复制代码require_once('../../lib/some_class.php');该方法有很多缺点:它首先查找指定的php包含路径, 然后查找当前目录.因此会检查过多路径.如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了.因此最佳选择是使用绝对路径...原创 2013-08-26 17:31:48 · 96 阅读 · 0 评论 -
YII基础知识学习一:yii布局模块modules
PS,本人新手,纯学习笔记总结,欢迎共同学习讨论。一、gii自动生成布局模块1> 在config中main.php中开启gii,即:把下面的注释去掉'modules'=>array( // uncomment the following to enable the Gii tool /* 'gii'=>array( ...2013-08-29 16:30:28 · 143 阅读 · 0 评论 -
最令PHP初学者头痛的十四个问题
【1】面之间无法传递变量 get,post,session在最新的php 版本中自动全局变量是关闭的,所以要从上一面取得提交过来得变量要使 用$_GET[’foo’],$_POST[’foo’],$_SESSION[’foo’]来得到。当然也可以修改自动全局变量为开(php .ini改为register_globals = On);考虑到兼容性,还是强迫自己熟悉新的写法比较好。 【2】Win...原创 2013-08-30 13:58:22 · 102 阅读 · 0 评论 -
超严格的图片上传验证
<?phpdefine('IN_SAESPOT', 1); include(dirname(__FILE__) . '/config.php');include(dirname(__FILE__) . '/common.php'); if (!$cur_user) exit('error: 401 login please');if ($...原创 2013-09-09 13:53:32 · 184 阅读 · 0 评论 -
curl, fsockopen ,file_get_contents 几个方法的效率对比
php读取网络文件 curl, fsockopen ,file_get_contents 几个方法的效率对比curl效率及稳定原来可以远远超越file_get_contents 最近需要获取别人网站上的音乐数据。用了file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的 例子设置了超时,可多数时候不会奏效:$config['context'] ...原创 2013-09-09 13:56:03 · 137 阅读 · 0 评论 -
12种常用的PHP字符串函数
在我们日常的PHP开发和学习中,字符串操作函数最为常见。对于一个初学者而言,这是必须掌握的基础知识。下面我为大家详细介绍12种常用的PHP字符串函数,增强一下大家对这些函数的认识。需要的朋友可以参考下: 1、查找字符位置函数strpos($str,search,[int]):查找search在$str中的第一次位置从int开始;stripos($str,search,[int]):...原创 2013-09-09 13:56:49 · 370 阅读 · 0 评论 -
深入浅出PHP下的文件上传
来源:http://www.360weboy.com/php/upload.html 文件作为一种特殊的表单数据,通过http post请求方式提交至服务器的时候,php会生成一个$_FILES全局数组,相关的文件信息会存放在这个全局数组中。我将在这篇文章中通过一些示例代 码来阐述php下的文件上传,并且深入看下关于文件上传内部的实现机制,最后简单说下如何加强这方面的安全性!文件上...原创 2013-09-10 10:44:44 · 131 阅读 · 0 评论 -
php中heredoc的使用方法
Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术。但是现在的一些论坛程序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。如下:<?php $name = '这是变量';print <<<EOT<html> &l...原创 2013-09-10 10:45:15 · 141 阅读 · 0 评论 -
带BOM的utf-8,用json_decode() 返回null的问题 --- 超过3个bom字符
PHP中file_get_contents函数获取URL文件内容时,带BOM的utf-8,用json_decode() 返回null的问题。网上有二种处理方法:1、正则if(preg_match('/^\xEF\xBB\xBF/',$data)) //去除可能存在的BOM{ $data=substr($data,3);} 2、自动检测目录下文件并移除BOM &...2014-03-17 12:01:03 · 326 阅读 · 0 评论 -
PHP session有效期问题
Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。PHP中的session有效期默认是1440秒(24分钟)【weiweiok 注:php5里默认的是180分】,也就是说,客户端超过24分钟没有刷新,当前session就会失效。很明显,这是不能满足需要的。 ...原创 2013-10-11 15:55:51 · 273 阅读 · 0 评论 -
php session和cookie使用说明
1. PHP的COOKIE cookie 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。PHP在http协议的头信息里发送cookie, 因此setcookie() 函数必须在其它信息被输出到浏览器前调用,这和对header() 函数的限制类似。1.1 设置cookie: 可以用setcookie() 或setrawcookie() 函数来设置cookie。也可以通过向客户端直接发送...原创 2013-10-11 15:58:31 · 124 阅读 · 0 评论 -
PHP Session变量不能传送到下一页
PHP Session变量值不能在不同页面间传递?出现这个问题的原因有以下几点: 1、客户端禁用了cookie 2、浏览器出现问题,暂时无法存取cookie 3、php.ini中的session.use_trans_sid = 0或者编译时没有打开--enable-trans-sid选项 为什么会这样呢?下面我解释一下: Session储存于服务器端(默认以文件方式存储session),根据客户...原创 2013-10-11 16:01:11 · 159 阅读 · 0 评论 -
PHP 实现多服务器共享 SESSION 数据
一、问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名、密码在整个网站的各个模块中都是可以登录使用的。各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可。但还存在一个问题,就是用户在这个服务器登录之后,进入另一个服务器的别的模块时...原创 2013-10-11 16:03:11 · 103 阅读 · 0 评论 -
编写PHP代码总结
1- 编写模块化代码 良好的PHP代码应该是模块化代码。PHP的面向对象的编程功能是一些特别强大的工 具,可以把你的应用程序分解成函数或方法。你应该尽可能多的从你的应用程序的服务器端分开前端的HTML/CSS/JavaScript代码。你也可以在 任何PHP框架上遵循MVC(模型-视图-控制器)模式。 2- 代码编写规范良好的PHP代码应该有一套完整的代码编写规范。通过对变量和函数的命...原创 2013-10-17 15:15:02 · 150 阅读 · 0 评论 -
PHP中对缓冲区的控制实现代码
大家在使用PHP的过程中不免要使用到header和setcookie两个函数,这两个函数会发送一段文件头信息给浏览器,但是如果在使用这两个函数之前已经有了任何输出(包括空输出,比如空格,回车和换行)就会提示出错,提示信息如下:“Header had all ready send by”!那有什么方法可以在有了输出的情况下面在发送文件头信息呢?在PHP 4.0里面加入了缓冲区控制的几个函数...原创 2013-10-17 23:43:43 · 187 阅读 · 0 评论 -
三个超好用的PHP加密解密函数
三个超好用的PHP加密解密函数,貌似是discuz里的…使用这些加密解密的原因是因为有时自己的URL地址被人获取以后想破解你里面传值的内容就必须知道你的key,没有key,他应该要破了一阵子才能知道你URL里面的内容吧。将它们打包成一个文件就叫fun.php吧 复制代码 代码如下:<?php function passport_encrypt($txt, $key) { srand((do...原创 2013-10-28 16:24:46 · 519 阅读 · 0 评论 -
8 个PHP功能开发
1、传递任意数量的函数参数 我们在.NET或者JAVA编程中,一般函数参数个数都是固定的,但是PHP允许你使用任意个数的参数。下面这个示例向你展示了PHP函数的默认参数: view sourceprint?01.// 两个默认参数的函数 02.function foo($arg1 = ”, $arg2 = ”) { 03.echo...原创 2013-10-28 17:10:22 · 132 阅读 · 0 评论 -
Parse error: syntax error, unexpected '}'
Parse error: syntax error, unexpected '}'报这个错误,可能原因有:一,对应错误行号上下多了可少了一个‘}’; 二,php.ini 没打开 短标签的支持设 short_open_tag = On就行了;如果没权限或是代理空间,那把<? ?>改为<?php ?>吧,本来应该有的习惯。...原创 2014-02-12 17:53:12 · 3326 阅读 · 0 评论 -
Yii php ajax实现异步上传图片
AJAX异步上传,用第三方的组件实现,首先下载一个jQuery 的Ajax文件上传的组件,下载地址为:http://www.phpletter.com/,下载完毕解压找到ajaxfilemanagerv1.1\ajaxfilemanager\jscripts中的ajaxfileupload.js。 下面是本人YII项目中的测试例子 【controllers】 publ...2013-08-23 15:19:34 · 231 阅读 · 0 评论 -
php中json_decode()和json_encode()的使用方法
在 php 中使用 json_encode() 内置函数(php > 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它。这个函数的功能是将数值转换成json数据存储格式。01 <?php02 $arr = array03 (04 'Name'=>'中文一定要是utf-8编码',05 ...原创 2013-08-09 17:56:30 · 230 阅读 · 0 评论 -
strtotime("+1 month", $strtimes) 导致时间戳错误
如果要获取当前时间中未来一个自然月的这个linux时间戳时 使用 $nexttime = strtotime("+1 month", $strtimes); 是不精确的,尤其$strtimes无效时。 因为PHP中 “+1 month” 默认是30天,strtotime中 “+1 month”大月31、小月30、2月是28天,因此会导致时间戳错误 要使用$nextt...原创 2013-03-29 16:06:26 · 635 阅读 · 0 评论 -
PHP获取文件夹内的图片,并按图片更新时间降序排列
很简单,直接上代码: $imgInputId = func::get('imgInputId'); //返回值的图片框id $selectImg = func::get('selectImg'); //已选择的图片名称,带后缀 $path = '/usr/local/images/'; $dir = @ opendir($path); ...2013-05-07 14:59:06 · 809 阅读 · 0 评论 -
PHP类继承实例: 高中学生 -- 学生--人
PHP 类的继承(extends) 编写了两个文件:person-student.inc和extends.php。person-student.inc是一个类文件,包含了对一个Person的定义,其中Student类继承了Person类,实现如下所示: <?php class Person{ var $id; var $name; var $age;...原创 2013-05-10 10:52:55 · 252 阅读 · 0 评论 -
PHP接口继承
PHP接口继承及接口多继承详解 在PHP的接口中,接口可以继承接口。虽然PHP类只能继承一个父类(单继承),但是接口和类不同,接口可以实现多继承,可以继承一个或者多个接口。当然 接口的继承也是使用extends关键字,要多个继承的话只要用逗号把继承的接口隔开即可。需要注意的是当你接口继承其它接口时候,直接继承父接口的静态常量属性和抽象方法,所以类实现接口时必须实现所有相关的抽象方...原创 2013-05-10 10:56:03 · 230 阅读 · 0 评论 -
imageString 画图文
<?php$width = 955; //38份25px/份$height = 71; //三行20px/行//创建背景图$image = ImageCreateTrueColor($width, $height);imageantialias($image,true);//浅黄色背景$Lightyellow = imagecolorallocate($image,251,255,2...原创 2013-05-24 14:28:04 · 143 阅读 · 0 评论 -
linux crontab调度脚本
linux下crontab调度命令定时执行PHP脚本 / php文件定时执行网上随便搜索也N多相关资料了,这里就讲下PHP程序开发人员需处理的问题。先看下面一行:*/2 20-22 * *...原创 2012-09-24 11:57:55 · 153 阅读 · 0 评论 -
PHP中的 extends与implements 区别
1、extends 是继承某个类 继承之后可以使用父类的方法 也可以重写父类的方法;2、implements 是实现多个接口 接口的方法一般为空的 必须重写才能使用; [在interface之间也可以声明为extends(多继承)的关系。注意一个interface可以extends多个其他interface。] extends是继承父类,只要那个类不是声明为final或者那...原创 2013-07-01 11:56:21 · 285 阅读 · 0 评论 -
PHP的抽象类、接口的区别和选择
区别:1、对接口的使用是通过关键字implements。对抽象类的使用是通过关键字extends。当然接口也可以通过关键字extends继承。2、接口中不可以声明成员变量(包括类静态变量),但是可以声明类常量。抽象类中可以声明各种类型成员变量,实现数据的封装。(另JAVA接口中的成员变量都要声明为public static final类型) [php] view pla...原创 2013-07-01 12:09:24 · 78 阅读 · 0 评论 -
PHP设计模式漫谈( 转)
转自51CTO:http://developer.51cto.com/art/201004/195765.htmPHP也有设计模式?是的,我们经常看到关于Java和.NET平台上设计模式的论述和讲解,其实,在PHP 5对面向对象的支持更加完善之后,设计模式的应用也可引入到PHP中并发挥重要作用。PHP设计模式漫谈之调解者模式当PHP中对象的关系和依赖发生冲突时,我们可以...原创 2012-09-28 16:40:28 · 89 阅读 · 0 评论 -
PHP5用装饰模式和工厂模式构造支持Memory Cache的数据库连接类(转)
转自:http://blog.youkuaiyun.com/heiyilvzhe/article/details/5979730 需求1. 为数据库连接类读数据增加缓存处理,缓存方式可以为文件、Memory Cache先只对Memory Cache实现2. 对现有代码不进行大的改动,方便移植3. 数据库连接类可扩充其他功能。 客户端调用以前的方法$result = $...原创 2012-09-28 16:46:20 · 88 阅读 · 0 评论 -
超实用的PHP代码片段
一、查看邮件是否已被阅读当你在发送邮件时,你或许很想知道该邮件是否被对方已阅读。这里有段非常有趣的代码片段能够显示对方IP地址记录阅读的实际日期和时间。 <?error_reporting(0);Header("Content-Type: image/jpeg");//Get IPif (!empty($_SERVER['HTTP_CLIENT_IP'])){ $ip=$_SERVER...原创 2013-11-22 15:48:27 · 110 阅读 · 0 评论 -
PHP初学者错误集
来源:http://bbs.php100.com/read.php?tid-150.html做开发请开启全部错误提示:error_reporting = E_ALL | E_STRICT屏蔽错误提示等于掩耳盗铃。代码写规范,错误少一半。1:为什么我得不到变量我在一网页向另一网页POST数据name,为什么输出$name时却得不到任何值?在PHP4.2以后的版本中regi...原创 2012-10-15 16:05:41 · 183 阅读 · 0 评论 -
yii rules 验证实例
public function rules() { return array( array('project_id, type_id, status_id, owner_id, requester_id,', 'numerical', 'integerOnly'=>true), array('name', 'length',...原创 2013-07-07 21:46:58 · 132 阅读 · 0 评论 -
Yii目录说明
目录文件 |-framework 框架核心库 |--base 底层类库文件夹,包 含CApplication(应用类,负责全局的用户请求处理,它管理的应用组件集,将提供特定功能给整个应用程序),CComponent(组件类,该 文件包含了基于组件和事件驱动编程的基础类,从版本1.1.0开始,一个行为的属性(或者它的公共成员变量或它通过getter和/或setter方...原创 2013-07-07 22:49:52 · 112 阅读 · 0 评论 -
Yii中url路由规则
待完善原创 2013-07-10 11:30:32 · 214 阅读 · 0 评论 -
Yii中import详解
待完善原创 2013-07-10 11:31:48 · 326 阅读 · 0 评论 -
php mysql临时表的应用
当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后对这临时表运行查询。创建临时表很容易,给正常的CREATE TABLE语句加上TEMPORARY关键字:CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT N...原创 2013-07-30 10:29:05 · 481 阅读 · 0 评论 -
PHP+MYSQL大小写问题
[PHP]一、大小写敏感1. 变量名区分大小写所有变量均区分大小写,包括普通变量以及$_GET,$_POST,$_REQUEST,$_COOKIE,$_SESSION,$GLOBALS,$_SERVER,$_FILES,$_ENV等; <?php$abc= 'abcd';echo$abc; //输出 'abcd';echo$aBc; //无输出echo...原创 2014-11-21 11:33:16 · 673 阅读 · 0 评论