php技术
文章平均质量分 58
liubing300
这个作者很懒,什么都没留下…
展开
-
.htaccess文件保护实例讲解
.htaccess太强大了,但它本身会不会被破解掉呢,请问如何保护它?比如说,想要保护admin文件夹,经过以下两个步骤:步骤一、可以用记事本新建文件.htaccess,输入以下内容:AuthType BasicAuthUserFile D:/AppServ/ww转载 2011-10-14 10:15:40 · 245 阅读 · 0 评论 -
PHP程序员最常犯的11个MySQL错误[转]
对于大多数web应用来说,数据库都是一个十分基础性的部分。如果你在使用PHP,那么你很可能也在使用MySQL—LAMP系列中举足轻重的一份子。对于很多新手们来说,使用PHP可以在短短几个小时之内轻松地写出具有特定功能的代码。但是,构建一个稳定可靠的数据库却需要花上一些时日和相转载 2011-10-14 10:16:33 · 119 阅读 · 0 评论 -
最常用的PHP正则表达式收集整理
详细出处参考:http://www.jb51.net/article/14049.htm正则表达式用于字符串处理、表单验证等场合,实用高效。本文收集了一些常用的表达式:PHP代码 $str = preg_replace("/()(.*?)()/", '\1\2\3',转载 2011-10-14 10:18:23 · 96 阅读 · 0 评论 -
php INI配置文件的解析实现分析(转)
我不知道怎么说才好,因为我在读INI文件的时候,往往都是用现成的函数:parse_ini_file或者是parse_ini_string,但怎么写入,就是另外的方法了(自己实现。。。。)所以看到这篇文章的时候,我也才刚刚知道,原来,还有一个dba的函数可以用,嗯,仔细看了一下转载 2011-10-14 10:19:22 · 153 阅读 · 0 评论 -
防止PHP注入
对php+mysql注射的防范,首先将magic_quotes_gpc设置为On,display_errors设置为Off,如果id型,我们利用intval() 将其转换成整数类型,如:$id=intval($id);mysql_query=”select *from e转载 2011-10-14 10:20:17 · 926 阅读 · 0 评论 -
Apache 的 httpd.conf 详解(很实用)
ServerRoot “/usr/local“ ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是相对路径,那么真实路径就位于这个ServerR oot定义的路转载 2011-10-13 21:17:32 · 172 阅读 · 0 评论 -
今天成功sql注入了一个网站,分享一下,但是声名不能破坏人家的网站呀!!(已经通知网站的负责人了)
看到了以前一位的帖子,说找不到表名http://www.cnhonkerarmy.com/thread-20274-1-1.html通过以前前辈的帖子:http://www.cnhonkerarmy.com/thread-51148-1-1.htmlhttp://转载 2011-10-13 14:05:07 · 358 阅读 · 0 评论 -
系统的功能模块一共分为如下几大类:
1、接口类(对外接口处理部分)命名时以I开头,如IProgram:表示Program的接口处理封装类2、业务逻辑处理类命名时以Logic开头,如LogicProgram:表示Program的业务逻辑处理3、数据表示类命名时以Data开头,如DataProgra转载 2011-10-12 21:53:37 · 1553 阅读 · 0 评论 -
PHP中的面向对象和面向过程 http://www.cnhonkerarmy.com/thread-58047-1-1.html
简介 “真正的天才具有正确评价不确定的,有风险的和矛盾的信息的能力。--邱吉尔” 使用许多编程语言时,你通常只能使用面向对象或面向过程二者之一的编程方式。而在PHP中,你可以自由选择或混用。目前绝大多数PHP程序员使用面向过程的方式,因为解析WEB页面本身就非常“过程转载 2011-10-14 10:14:26 · 403 阅读 · 0 评论 -
Ubuntu10.04下使用源码包搭建LAMP环境错误笔记
1.编译环境错误:ubuntu10.04下仅预装了gcc编译环境,但安装此套环境的源码包还需要g++(即c++)的编译环境,需要安装g++软件,但这两者的版本需要同步,否则安装会出错,比较好的解决方案是使用如下的命令:DE>sudo apt-get install b转载 2011-10-14 16:02:38 · 270 阅读 · 0 评论 -
apache 常用两种工作模式 学习
空闲子进程:是指没有正在处理请求的子进程。1、prefork.c模块(一个非线程型的、预派生的MPM)prefork MPM 使用多个子进程,每个子进程只有一个线程。每个进程在某个确定的时间只能维持一个连接。在大多数平台上,Prefork MPM在效率上要比Worker转载 2011-10-17 20:05:00 · 297 阅读 · 0 评论 -
Apache开启Gzip和Expires提升网页加载速度
在Apache的配置文件中找到下面两行,将注释#去掉,重启。Php代码LoadModule deflate_module modules/mod_deflate.so LoadModule expires_module modules/mod_转载 2011-10-17 20:59:48 · 672 阅读 · 0 评论 -
php常用环境变量和系统变量
PHP环境变量主要有$GLOBALS[]、$_SERVER[]、$_GET[]、$_POST[]、$_COOKIE[]、$_FILES[]、$_ENV[]、$_REQUEST[]、$_SESSION[]。关于$_SERVER[],在这里主要说明一下:转载 2011-10-18 10:48:11 · 1976 阅读 · 0 评论 -
PHP获取当前URL
PHP获取当前url路径的函数及服务器变量:QUERY_STRING、REQUEST_URI、SCRIPT... 1,$_SER VER["QUERY_STRING"] 说明:查询(query)的字符串 2,$_SERVER["REQUEST_URI"]转载 2011-10-09 17:31:23 · 2732 阅读 · 0 评论 -
Mysql中limit的用法详解
在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。 SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset原创 2011-10-09 20:32:41 · 152 阅读 · 0 评论 -
今天在php的学习群中发现了这样一个关于 strrev问题,及解决方法
function strrev($str){ echo $a; if ($str == '') return 0; for ($i=(strlen($str)-1); $i>=0; $i--) { $rev_str=array(); $rev_str=原创 2011-10-09 21:54:52 · 157 阅读 · 0 评论 -
详细Apache MPM prefork
Apache MPM prefork说明一个非线程型的、预派生的MPM状态MPM模块名mpm_prefork_module源文件prefork.c转载 2011-10-17 20:22:26 · 813 阅读 · 0 评论 -
linux下的打开windows的文件出现 乱码问题
linux 文件编码格式转换2009-09-12 00:28如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。文件编码转换1.在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式:set fileencoding=utf-8转载 2011-09-19 16:22:04 · 157 阅读 · 0 评论 -
简单的一个php分页类
<?phpclass Pages{public $page_total;//总记录数protected $page; //当前页protected $page_size;//每页显示的记录数protected $page_num;//总页数protected $url原创 2011-10-09 20:51:40 · 120 阅读 · 0 评论 -
require(),include(),require_once()和include_once()的异同
require()和include()有许多相似之处,也有些不同。理解它们的不同点非常重要,否则很容易犯错误。我把这两个语句放在一起介绍,读者可以比较学习。1.require()语句 require()语句用于指定的文件代替语句本身,就象C语言中的incl转载 2011-10-09 21:13:44 · 130 阅读 · 0 评论 -
PW读写函数之writeover(利用缓存)
应骨头邀请,过来客串一下。我会尽量满足大家的好奇心,把简单的东西,说得看上去很复杂很复杂。在global.php文件里面,有这么个函数,叫writeover。做啥用的呢,英文好的同学一看,哦,写啊写~是的,如果有一天程序可以用中文写,我们就可以定义它为函数 写啊写(文件物理地址,文件内容,BRABRA……)『』后面的内容省略是因为一方面我们这个是入门的小说明文,主要是把常用转载 2011-10-23 21:51:51 · 282 阅读 · 0 评论 -
PW读写函数之readover
大家昨天的writeover的练习代码还找得到吧,拿出来再运行一下,生成一个写着hello world!的cachename.txt。小心,不要加热不要暴露在空气中,放在你的服务器上别动。下面来创建另一个php文件,命名为readovertest.php,内容为复制代码$textread=readover('cachename.txt');//文件内容赋值给变量转载 2011-10-23 21:57:13 · 410 阅读 · 0 评论 -
PHP基础知识---post和get的区别
1.GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密,得出如:%E4转载 2011-10-23 21:22:34 · 341 阅读 · 0 评论 -
PHP中的数组函数
PHP中的数组函数PHP有74个和数组处理相关的函数,先给出一个总表:array_change_key_case — 转变数组中所有键值的大小写形式array_chunk — 将一个数组拆成多个小单元array_combine — 用一个数组的值作为其键名,另一个数组的值作为其值的方法来创建数组array_count_values — 统计数组中的值出现的次数arr转载 2011-11-16 14:07:32 · 528 阅读 · 0 评论 -
php防止重复定义常量
defined('YII_DEBUG') or define('YII_DEBUG',true);defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);or 语法是当左边的表达式为flase的时候执行右边的表达式defined 是判断常量是否定义,define 是定义常量。defined('YII_DEBUG') or原创 2011-10-27 09:28:06 · 587 阅读 · 0 评论 -
常用的正则表达
1. 平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用: 2. "^\d+$"//非负整数(正整数 + 0) 3. "^[0-9]*[1-9][0-9]*$"//正整数 4. "^((-\d+)|(0+))$"//非正整数(负整数 + 0) 5. "^-[0-9]*[1-9][0-9]*$"//负整数 6. "^-?转载 2011-10-27 09:06:53 · 191 阅读 · 0 评论 -
对session和cookie的一些理解
一、cookie机制和session机制的区别*************************************************************************************Cookie是客户端的存储空间,由浏览器来维持。具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由转载 2011-10-27 10:21:32 · 122 阅读 · 0 评论 -
PHP4与PHP5的区别
PHP5 中的对象已经进行了较系统、较全面的调整,现在的样子可能看起来会有些类似于 Java。本小节着重讲述 PHP5 中新的对象模式,并举了一些较简易的例子来说明。就让本节成为你的 PHP5 之旅的一个新起点吧。:)* 构造函数和析构函数 * 对象的引用 * 对象的克隆 * 对象中的私有、公共及受保护模式 * 接口 (Interfaces) * 抽象类 * __c转载 2011-10-31 15:08:03 · 190 阅读 · 0 评论 -
implement的定义与extends的区别
implements是一个类实现一个接口用的关键字,他是用来实现接口中定义的抽象方法。 还有几点需要注意: (1)接口可以被多重implements,抽象类只能被单一extends (2)接口只有定义,抽象类可以有定义和实现 (3)接口的字段定义默认为:public static final, 抽象类字段默认是"friendly"(本包可见)原创 2011-10-31 15:23:28 · 929 阅读 · 0 评论 -
正确理解PHP抽象类应用
对于PHP程序员来说,最为难掌握的一点要数PHP抽象类应用这一块知识点。作为一个新手其实也还没有到要用面向对象的知识去编程,但以后进行开发,使用类进行封装或者使用接口之类,把程序进行各种模块式的开发,这当然是必然的。PHP函数shuffle()实现重新排序深入探讨PHP array_multisort分享PHP array_walk()函数使用技巧正确应用PHP for转载 2011-10-31 15:25:47 · 183 阅读 · 0 评论 -
PHP截取中文字符串方法
程序一:PHP截取中文字符串方法 由于网站首页以及vTigerCRM里经常在截取中文字符串时出现乱码(使用substr),今天找到一个比较好的截取中文字符串方法,在此与大家共享。function msubstr($str,$start,$len){$newstr="";$strlen=$start+$len;for($i=$start;$iif(ord(sub转载 2011-11-04 09:55:30 · 139 阅读 · 0 评论 -
php中session的处理机制 (转)
1。 PHP服务端默认的session存储是文件存放方式,在Windows上PHP默认的Session服务端文件存放在C:\WINDOWS\Temp下,可用session_save_path ('./t/');指定具体存放目录。2。 SESSION 的实现中采用COOKIE技术,SESSION会在客户端保存一个包含session_id(SESSION编号)的COOK转载 2011-11-02 16:16:12 · 157 阅读 · 0 评论 -
php多线程开发例子
PHP语言本身是不支持多线程的. 总结了一下网上关于PHP模拟多线程的方法, 总的来说, 都是利用了PHP的好伙伴们本身所具有的多线程能力. PHP的好伙伴指的就是LINUX和APACHE啦, LAMP嘛. 另外, 既然是模拟的, 就不是真正的多线程. 其实只是多进程. 进程和线程是两个不同的概念. 好了, 以下方法都是从网上找来的. 1. 利用LINUX操作系统转载 2011-11-05 20:21:22 · 373 阅读 · 0 评论 -
php魔术函数
魔术函数1。__construct()实例化对象时被调用,当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。2。__destruct()当删除一个对象或对象操作终止时被调用。3。__call()对象调用某个方法,若方法存在,则直接调用;若不存在,则会去调用__call函数。4。__get转载 2011-11-05 20:42:05 · 161 阅读 · 0 评论 -
php上传文件处理
众所周知,文件上传在一些网站应用中是必不可少的一部分。比如个人博客上传个性头像,一些论坛分享好的学习资料等,这就涉及到使用表单处理文件上传的知识,在php中我们可以使用$_FILES这个全局数组来处理。下面就看看基本的文件上传处理部分。首先要说明的,能够上传文件必定是一个安全隐患,所以在开发这部分功能时,一定要注意网站的安全性。而本文所探讨的只是基本的文件上传部分,关于安全性这方面考虑的较少,希望转载 2011-11-06 10:21:00 · 158 阅读 · 0 评论 -
PHP 实现多服务器共享 SESSION 数据
PHP 实现多服务器共享 SESSION 数据一、问题起源稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名、密码在整个网站的各个模块中都是可以登录使用的。各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可。但还存在一个问题,转载 2011-11-26 15:27:40 · 137 阅读 · 0 评论 -
fastcgi与cgi的区别
fastcgi与cgi的区别先讲下cgi:cgi在2000年或更早的时候用得比较多, 以前web服务器一般只处理静态的请求,如果碰到一个动态请求怎么办呢?web服务器会根据这次请求的内容,然后会fork一个新进程来运行外部c程序(或perl脚本...), 这个进程会把处理完的数据返回给web服务器,最后web服务器把内容发送给用户,刚才fork的进程也随之退出。 如果下次用户还请求改动转载 2011-11-05 19:52:19 · 488 阅读 · 0 评论 -
PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep
PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep, __wakeup, __toString, __set_state, __clone and __autoload1、__get、__set这两个方法是为在类和他们的父类中没有声明的属转载 2011-11-05 20:28:08 · 136 阅读 · 0 评论 -
having和where子句的区别
1.作用的对象不同。WHERE 子句作用于表和视图,HAVING 子句作用于组(group)。 eg:SELECT city FROM weather WHERE temp_lo = (SELECT max(temp_lo) FROM weather); 2.WHERE 在分组和聚集计算之前选取输入行(因此,它控制哪些行进入聚集计算), 而 HAVING 在分组和聚集之后选取分组的转载 2011-11-09 10:21:05 · 193 阅读 · 0 评论 -
urlencode,base64_encode, htmlspecialchars的区别?何时使用?
string urlencode ( string $str )返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码方式一样。由于历史原因,此编码在将空格编码为加号(+)方原创 2011-11-09 09:58:17 · 1061 阅读 · 0 评论