随笔分类 -  php

上一页 1 2 3 4 5 下一页

Web-Server 中 PHP 的两种工作方式
摘要:Web-Server 中 PHP 的两种工作方式ByKUCO|Published:2011/07/07部分内容参考自这里,这里在项目生产环境的 Web-Server 中 PHP.exe 通常以两种工作方式工作, 一种是 Apache 中的模块化方式, 另一种是在 Nginx 中的 FastCGI 方式. 除此之外, PHP.exe 还有一种古老的运行方式: CGI 方式, 这种方式基本上已经被淘汰, 我们可以通过 CGI 方式来很好的理解前两种方式.CGI 方式是:01#当 Web-Server 启动时:021, Web-Server 只初始化自身.0304#web 请求处理过程是:051, 阅读全文

posted @ 2011-08-18 16:59 天空尚兰

析构函数与PHP的垃圾回收机制
摘要:析构函数:当某个对象成为垃圾或者当对象被显式销毁时执行。GC(Garbage Collector)在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内存中销毁。这是PHP的GC(Garbage Collector)垃圾处理机制,防止内存溢出。当一个PHP线程结束时,当前占用的所有内存空间都会被销毁,当前程序中的所有对象同样被销毁。__destruct() 析构函数__destruct() 析构函数,是在垃圾对象被回收时执行。析构函数也可以被显式调用,但不要这样去做。析构函数是由系统自动调用的,不要在程序中调用一个对象的虚构函数。析构函数不能带有参数。如下面程序所示,程序 阅读全文

posted @ 2011-08-17 10:24 天空尚兰

转:set_magic_quotes_runtime(0|1) 和 magic_quotes_gpc 和 addslashes() 和 stripslashes()
摘要:set_magic_quotes_runtime(0|1) 和 magic_quotes_gpc 和 addslashes() 和 stripslashes() 在php.ini的配置文件中,有个布尔值的设置,就是magic_quotes_runtime,当它打开时,php的大部分函数自动的给从外部引入的(包括数据库或者文件)数据中的溢出字符加上反斜线。 当然如果重复给溢出字符加反斜线,那么字符串中就会有多个反斜线,所以这时就要用set_magic_quotes_runtime()与get_magic_quotes_runtime()设置和检测php.ini文件中magic_quotes_ru 阅读全文

posted @ 2011-08-17 10:01 天空尚兰

php正则表达式
摘要:1 正规表达式中的 /u /i /s 的用法:/u 表示按unicode(utf-8)匹配(主要针对多字节比如汉字)/i 表示不区分大小写(如果表达式里面有 a, 那么 A 也是匹配对象)/s 表示将字符串视为单行来匹配 阅读全文

posted @ 2011-08-11 10:46 天空尚兰 阅读(156) 评论(0) 推荐(0)

php ip地址 所在地
摘要:分为两种情况:前端:通过腾讯的qq分享api <script type="text/javascript" src="http://fw.qq.com/ipaddress"></script>返回一个javascript数组var IPData = new Array("183.62.141.46","","广东省","深圳市");后台:通过 qqwry.dat后台查询 返回结果到前台显示打包:http://files.cnblogs.com/code 阅读全文

posted @ 2011-08-05 18:28 天空尚兰 阅读(146) 评论(0) 推荐(0)

php 代码运行时间查看类
摘要:<?php //author:zhoujian//date:2011-08-05class RunTime//页面执行时间类 { private $starttime;//页面开始执行时间 private $stoptime;//页面结束执行时间 private $spendtime;//页面执行花费时间 function getmicrotime()//获取返回当前微秒数的浮点数 { list($usec,$sec)=explode(" ",microtime()); return ((float)$usec + (float)$sec); } function s 阅读全文

posted @ 2011-08-05 17:31 天空尚兰 阅读(468) 评论(0) 推荐(0)

php真值表
摘要:PHP 是一门弱类型的语言, 和 C# / JAVA 不一样, 在声明一个变量的时候, 无需声明它的类型. 因此, 可能会出现很多特殊的值, 偶尔会出现一些奇奇怪怪的问题.下午, 从国外网站偷来一个真值表, 嘿嘿, 很直观, 很详细. 不错~ 赶紧发上来.empty 和 isset的区别和联系要说它们的联系,其共同点就是empty()和isset()都是变量处理函数,作用是判断变量是否已经配置,正是由于它们在处理变量过程中有很大的相似性,才导致对它们的关系认识不足。单从empty()和isset()这两个函数本身来考虑的话会把人弄得更糊涂,换一个角度来它。empty()和isset()的处理对 阅读全文

posted @ 2011-08-05 09:50 天空尚兰

php 文件上传类
摘要:<?php /** * 文件上传类 */ class uploadFile { public $max_size = '1000000';//设置上传文件大小 public $file_name = 'date';//重命名方式代表以时间命名,其他则使用给予的名称 public $allow_types;//允许上传的文件扩展名,不同文件类型用“|”隔开 public $errmsg = '';//错误信息 public $uploaded = '';//上传后的文件名(包括文件路径) public $save_path;/ 阅读全文

posted @ 2011-08-03 12:59 天空尚兰 阅读(511) 评论(1) 推荐(1)

php等比例生成缩略图
摘要:function reSizeImg($imgSrc, $resize_width, $resize_height, $isCut=false) { //图片的类型 $type = substr ( strrchr ( $imgSrc, "." ), 1 ); //初始化图象 if ($type == "jpg") { $im = imagecreatefromjpeg ( $imgSrc ); } if ($type == "gif") { $im = imagecreatefromgif ( $imgSrc ); } if ($t 阅读全文

posted @ 2011-08-03 12:46 天空尚兰 阅读(424) 评论(0) 推荐(1)

最完整PHP.INI中文版
摘要:适用于 php-5.2 的 php.ini 中文版作者:金步国;;;;;;;;;;;;;;;;;;; 关于php.ini ;;;;;;;;;;;;;;;;;;;; 这个文件必须命名为'php.ini'并放置在httpd.conf中PHPINIDir指令指定的目录中。; 最新版本的php.ini可以在下面两个位置查看:; http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=co; http://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co;;;;;; 阅读全文

posted @ 2011-07-29 17:34 天空尚兰

简单的mysql操作类
摘要:<?phpfinal class MySQL { private $connection; public function __construct($hostname, $username, $password, $database) { if (!$this->connection = mysql_connect($hostname, $username, $password)) { exit('Error: Could not make a database connection using ' . $username . '@' . $host 阅读全文

posted @ 2011-07-29 16:26 天空尚兰 阅读(192) 评论(0) 推荐(0)

PHP的header函数详解
摘要:<?php// fix 404 pages:header('HTTP/1.1 200 OK'); // set 404 header:header('HTTP/1.1 404 Not Found'); // set Moved Permanently header (good for redrictions)// use with location headerheader('HTTP/1.1 301 Moved Permanently'); // redirect to a new location:header('Locatio 阅读全文

posted @ 2011-07-29 16:11 天空尚兰 阅读(161) 评论(0) 推荐(0)

include等包含代码段注意
摘要:main.php:test();include "include.php";include.php:<?php function test(){ } 这样的话会出错Fatal error: Call to undefined function test() 所以应该先包含代码段再调用,不然找不到定义的函数。 阅读全文

posted @ 2011-07-28 15:54 天空尚兰 阅读(172) 评论(0) 推荐(0)

Web服务器性能/压力测试工具http_load、webbench、ab、Siege使用教程
摘要:一、http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。下载地址:http://soft.vpser.net/test/http_load/http_load-12mar2006.tar.gz安装很简单#tar zxvf http_load-12mar2006.tar.gz#cd http_load-12mar2006#make && make install命令格式:http_load - 阅读全文

posted @ 2011-07-16 14:31 天空尚兰

php autoload 机制详解
摘要:(1)autoload机制概述在 使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。这也 是OO设计的基本思想之一。在PHP5之前,如果需要使用一个类,只需要直接使用include/require将其包含进来即可。下面是一个实际的例 子:/* Person.class.php */<?phpclass Person {var $name, $age;function __construct ($name, $age){$this->name = $name;$this->age = $a 阅读全文

posted @ 2011-07-16 13:16 天空尚兰

PHP缓存技术的使用技巧分享
摘要:PHP缓存技术的应用时相当普遍的,也许有些人还对这项技术不太了解,我们现在就为大家详细的介绍一下PHP缓存技术的相关应用技巧。 在大部份情况下我们的网站都会使用数据库作为站点数据存储的容器。当你执行一个SQL查询时,典型的处理过程是:连接数据库->准备SQL查询->发送查询到数据库->取得数据库返回结果->关闭数据库连接。但数据库中有些数据是完全静态的或不太经常变动的,缓存系统会通过把SQL查询的结果缓存到一个更快的存储系统中存储,从而避免频繁操作数据库而很大程度上提高了程序执行时间,而且缓存查询结果也允许你后期处理。普遍使用的PHP缓存技术 PHP缓存技术之数据缓存: 阅读全文

posted @ 2011-07-12 14:54 天空尚兰

PHP获取变量的变量名的一段代码的bug
摘要:百度一下关于php获取变量名的办法都是下面这个函数。但是用了发现有点bug/** * 获取变量名 * * @param $string * @return $string * * $test = "helo"; * $test2 = "helo"; * getVarName($test2); */function getVarName(&$src){ //存储当前变量值 $save = $src; //存储所有变量值 $allvar = $GLOBALS; //在函数中不要直拉遍历$GLOBALS,会出现堆栈问题 foreach($allvar 阅读全文

posted @ 2011-07-07 11:37 天空尚兰 阅读(1328) 评论(4) 推荐(1)

php学习笔记--数组
摘要:一 访问数组1、如果使用的是索引方式的数组可以使用for循环来实现如下:for ( $i = 0; $i < count($arr); $i++ ){ echo $arr[i] . '<br/>';} 2、如果使用的是非索引方式的选择就多了,比如(1)foreach用法foreach ( $arr as $value ){ echo $value . '<br/>';} (2)另一种foreach用法foreach ( $arr as $key => $value ){ echo $key . ' - ' . 阅读全文

posted @ 2011-07-06 15:40 天空尚兰

另外五个 PHP 设计模式
摘要:设计模式 一书介绍了很多此类概念。当时,我还在学习面向对象 (OO),因此我发现那本书中有许多概念都很难领会。但是,随着越来越熟悉 OO 概念 —— 尤其是接口和继承的使用 —— 我开始看到设计模式中的实际价值。作为一名应用程序开发人员,即使从不了解任何模式或者如何及何时使用这些模式,对您的职业生涯也没有什么大的影响。但是,我发现了解这些模式以及 developerWorks 文章 “五种常见 PHP 设计模式” 中介绍的那些模式的优秀知识后(请参阅 参考资料),您可以完成两件事情: 启用高带宽会话 如果了解设计模式,您将能够更快地构建可靠的 OO 应用程序。但当整个开发团队知道各种模式时,. 阅读全文

posted @ 2011-07-06 13:57 天空尚兰

五种常见的php设计模式
摘要:设计模式 一书将设计模式引入软件社区,该书的作者是 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides Design(俗称 “四人帮”)。所介绍的设计模式背后的核心概念非常简单。经过多年的软件开发实践,Gamma 等人发现了某些具有固定设计的模式,就像建筑师设计房子和建筑物一样,可以为浴室的位置或厨房的构造方式开发模板。使用这些模板或者说设计模式 意味着可以更快地设计更好的建筑物。同样的概念也适用于软件。设计模式不仅代表着更快开发健壮软件的有用方法,而且还提供了以友好的术语封装大型理念的方法。例如,您可以说您正在编写一个提供松散耦合的 阅读全文

posted @ 2011-07-06 13:52 天空尚兰

上一页 1 2 3 4 5 下一页

导航