中山php|最优网络中山做网站 中山php建站

最优良人

Category Page for: 后端程序

php时间日期函数date,getdate,strtotime,strftime,strptime,time,mktime,microtime汇总对比

2011/08/19 at 16:56 » Comments (379)

date — 格式化一个本地时间/日期(把时间戳变成文本格式) string date ( string $format [, int $timestamp ] ) timestamp 是可选的,默认值为 time()。 $today = date("H:i:s"); ...more »

php函数体里调用外部变量

2011/08/18 at 21:47 » Comments (26)

在程序开发中,有时在一个函数里面需要调用到函数体以外的变量,这个时候有几种方法 可以再声明变量的时候声明为全局变量,如: global $string; $string = 'test'; function __(){ return $string; } 也可以在函数的内部声明,如: $string = 'test'; function __(){ global $string; return $string; } 当需要调用的变量只有少数的时候可以这样用,那么如果是需要使用大量已经定义过的变量或者甚至是全部变量的时候如何处理呢?可以这样处理,用到PHP的超全局数组$GLOBALS和extract()函数 PHP手册对$GLOBAL的说明是这样的: An associative array containing references to ...more »

php获取远程图片,下载到本地-readfile,file_get_contents函数

2011/08/18 at 14:38 » Comments (16)

php获取远程图片的原理是使用readfile函数读入一个远程文件的stream,然后写入一个文件生成本地图片 注:也可以用file_get_contents函数,二者的区别是readfile直接把文件stream输出,而后者赋给变量。 以下自定义函数可以实现远程图片获取,并自动下载为本地文件: <?php // // Function: 获取远程图片并把它保存到本地 // // // 确定您有把文件写入本地服务器的权限 // // // 变量说明: // $url 是远程图片的完整URL地址,不能为空。 // $filename 是可选变量: 如果为空,本地文件名将基于时间和日期 // 自动生成. function GrabImage($url,$filename="") { if($url==""):return false;endif; if($filename=="") { $ext=strrchr($url,"."); if($ext!=".gif" && $ext!=".jpg"):return false;endif; $filename=date("dMYHis").$ext; } ob_start(); readfile($url); $img = ob_get_contents(); ob_end_clean(); $size = strlen($img); $fp2=@fopen($filename, "a"); fwrite($fp2,$img); fclose($fp2); return $filename; } $img=GrabImage("/Article/UploadFiles/201003/20100313135251414.jpg",""); if($img):echo '<pre><img src="'.$img.'"></pre>'; else:echo "false"; endif; ?> more »

FleaPHP页面控件 WebControls的使用

2011/08/16 at 10:31 » Comments (318)

如果不使用模板引擎,需要先注册控件 $ui =& FLEA::initWebControls() ;其实就是返回控件的实例,该函数的代码是 00662 function & initWebControls() 00663 { 00664 return FLEA::getSingleton(FLEA::getAppInf('webControlsClassName')); 00665 ...more »

PHP利用header函数实现各种状态的跳转

2011/08/15 at 16:08 » Comments (250)

header实现301永久重定向 Header("HTTP/1.1 301 Moved Permanently"); Header("Location: http://www.zui88.com"); header实现302临时重定向 Header("HTTP/1.1 302 Found"); Header("Location: http://www.zui88.com"); header实现404无法找到页面 Header("HTTP/1.1 404 Not Found"); 一下函数可实现各种状态的跳转: /** * 跳转页面 * * 使用header()进行页面跳转,不显示任何内容.如果不能使用header跳转 * @param string $url * @param int $status */ function goto($url,$status=null) { if(!empty($status)) { $status=intval($status); $codes = array( 100 => "Continue", 101 => "Switching Protocols", 200 ...more »

php反斜线引用字符串

2011/08/15 at 01:09 » Comments (19)

addslashes:使用反斜线引用字符串 ,返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线,这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)。 stripslashes 相反的操作,或者如果系统自动开启了魔法引号(默认是开启的),如果想得到原来没被转义过的字符串,可以使用此函数 比如在正则的逆向引用中: $find[] = "/<a(.*)href=(\"|')?(\/.*)(\"|'|\s)/Uei"; $replace[] ="stripslashes(str_replace('$','$@&#','$0'));"; 去掉php自动加上的反斜杠 more »

循环,迭代,递归的理解

2011/08/15 at 01:05 » Comments (3)

循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。 迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。 递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。 more »

PHP使用PDO进行跨数据库操作

2011/08/15 at 00:58 » Comments (25)

PDO(PHP Data Object) 是PHP 5新出来的东西,在PHP 6都要出来的时候,PHP 6只默认使用PDO来处理数据库,将把所有的数据库扩展移到了PECL。 为了掌握 PDO,需要了解 5 个关键概念。这 5 个概念是:    连接和连接管理 事务和自动提交 预处理语句和存储过程 错误和错误处理 特定于驱动程序的功能性,包括 滚动游标 和 大型对象 以下是一些简单的例子 /* * PDO::query() 主要是用于有记录结果返回的操作,特别是SELECT操作 PDO::exec() 主要是针对没有结果集合返回的操作,如INSERT、UPDATE等操作 PDO::lastInsertId() 返回上次插入操作,主键列类型是自增的最后的自增ID PDOStatement::fetch() 是用来获取一条记录 ...more »

使用eval在js或者php中创建回调函数

2011/08/14 at 02:46 » Comments (48)

js和php里面都有一个函数eval();其作用是将参数里面的字符串当做代码执行,用这个函数可以创建自定义的回调函数 php回调函数: /**** @param* @return**/ function a($str){echo $str;} /**** @param* @return**/ function s($callBack){eval($callBack);} s("a('linshaoqiang');"); exit; js回调函数: function a(str){ alert(str); } function s(callBack){ with ( window )eval(callBack); } s("a('linshaoqiang')"); more »

上传文件时$_FILES为空的解决方法

2011/08/14 at 02:38 » Comments (403)

用xheditor上传文件时,出现一点上传就卡死没反应的问题,在后台处理上传的php文件里打印$_FILES时发现为空数组,出现这个问题的原因主要有两个:表单原因或者php设置原因: 1,表单类型: 上传文件的表单编码类型必须设置成 enctype="multipart/form-data",因为要传大数据,一般提交方式用POST 2,php设置问题: php默认的post_max_size 为2M.如果 POST 数据尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便会为空. 解决的方法是: 1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完. 但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行. 这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time 在php.ini里查找 max_execution_time 默认是30秒.改为 max_execution_time = 0(可修改范围为PHP_INI_ALL) 0表示没有限制 或者在php文件头设置ini_set('max_execution_time',0); 2. 修改 post_max_size 设定 POST ...more »