PHP
文章平均质量分 75
risingsun001
这个作者很懒,什么都没留下…
展开
-
include和require的路径问题
<br />试验一通,总结如下。<br /><br />定义A=包含文件 B=被A包含的文件 C=被B包含的文件<br />也就是说 A 包含 B, B包含C<br />A中有 Php代码require'[B路径]'//(这里的require可以换成require_once include)<br />B中有 Php代码require'[C路径]'//(这里的require可以换成require_once include)<br /><br /><br />下面的讨论主要针对A为入口文件,即只直接访问A,不原创 2011-06-02 13:33:00 · 1188 阅读 · 1 评论 -
PHP与Memcached服务器交互的分布式实现源码分析
前段时间,因为一个项目的关系,研究了php通过调用memcache和memcached PECL扩展库的接口存储到分布式缓存服务器的机制,在此做我根据他们各自的源码进行分析,希望能对这方面感兴趣的人有些帮助。本篇文章我会针对php和memcache扩展库的交互根据源码展开分析。PHP调用memcache的接口通常会是如下过程:$mmc = new Memcache();转载 2015-03-09 16:09:01 · 1222 阅读 · 0 评论 -
PHP源码分析-PHP的生命周期
之前看到的资料记录一下:http://www.walu.cc/phpbook/1.3.mdhttp://www.php-internals.com/book/?p=chapt02/02-01-php-life-cycle-and-zend-engine一个PHP实例,无论是从init脚本中调用的,还是从命令行启动的,都会向我们上一节说的那样, 依次进行Module init原创 2015-03-23 19:46:45 · 830 阅读 · 0 评论 -
从源码分析PHP的SESSION实现机制
从源码分析PHP的SESSION实现,深入理解PHP的session机制。Session是以扩展的形式嵌入到PHP内核的,所以我们可以把Session当成扩展来看待。从整个PHP的生命周期来了解php的SESSION机制原创 2015-03-23 21:15:58 · 4855 阅读 · 1 评论 -
使用 PHP 直接在共享内存中存储数据集
在 PHP 中使用共享内存作为存储选项的分步指南了解共享内存,学习如何在 Web 应用程序中将共享内存用作一种数据存储选项,并享受它的高速、可靠性和与其他应用程序交换数据的优势。提供的示例展示了它如何帮助解决 Web 应用程序开发中的常见问题。概述共享内存是一种在相同机器中的应用程序之间交换数据的有效方式。一个进程可创建一个可供其他进程访问的内存转载 2015-05-08 17:20:51 · 1328 阅读 · 0 评论 -
PHP 远程 DoS 漏洞(PHP Multipart/form-data remote dos Vulnerability)
4 月 3 日,有人在 PHP 官网提交 PHP 远程 DoS 漏洞(PHP Multipart/form-data remote dos Vulnerability),代号 69364①。由于该漏洞涉及 PHP 的所有版本,故其影响面较大,一经发布迅速引发多方面关注。14 日,各种 PoC 已经在网络上流传。原创 2015-05-20 11:45:43 · 2187 阅读 · 0 评论 -
PHP高效率写法
1.尽量静态化:如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。当然了,这个测试方法需要在十万级以上次执行,效果才明显。其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静态方法可以直接调用,实例方法要先成生实例,通过实例调用方法,静态速度很快,但是多了会占内存。任何语言原创 2015-06-17 14:19:15 · 552 阅读 · 0 评论 -
PHP简单防注入
index.php 加上以下内容,免注入。foreach (array("'", '%27', '"', '%22', '(', '%28', '*', '%2A', '.php', '.js', '.css', '.png', '.jpg', '.gif', '.txt', '.ico', '.ini', '.ssh', '.svn', '.log') as $k1 => $v1)if(fa原创 2015-05-18 16:27:59 · 559 阅读 · 0 评论 -
PHP错误处理函数
错误处理 函数debug_backtrace — 产生一条回溯跟踪(backtrace)debug_print_backtrace — 打印一条回溯。error_get_last — 获取最后发生的错误error_log — 发送错误信息到某个地方error_reporting — 设置应该报告何种 PHP 错误restore_error_handler — 还原之前的错误处理函数rest原创 2015-05-18 18:01:38 · 693 阅读 · 0 评论 -
MySQL优化学习笔记
MySQL优化学习笔记,通过实例来实际操作学习,掌握对MySQL优化的入门原创 2015-05-27 18:22:19 · 1995 阅读 · 0 评论 -
用cronolog分割Nginx日志
方法一(来源网络):1,安装cronologwget http://cronolog.org/download/cronolog-1.6.2.tar.gztar zxvf cronolog-1.6.2.tar.gzcd cronolog-1.6.2mkdir -p /usr/local/cronolog./configure --prefix=/us原创 2015-10-08 10:23:28 · 3364 阅读 · 0 评论 -
bash: /usr/bin/php^M: bad interpreter: No such file or directory
php脚本在linux执行报错bash: /usr/bin/php^M: bad interpreter: No such file or directory,解决方法原创 2015-10-23 15:38:52 · 2782 阅读 · 0 评论 -
LINUX常用的日志分析命令
对于已经在线的系统来说,常常会遇到各种恶意攻击行为,其中比较常见的便是HTTP flood,也称之为CC攻击。如何快速的定位到攻击,并迅速响应,便成为开发运维人员必备的技能。定位问题最快的方法就是登陆到相应的应用,查看相应的攻击来源,及时进行处理。有时候一些简单的linux命令就可以帮助我们快速分析日志,及时响应原创 2015-10-12 17:36:38 · 11102 阅读 · 3 评论 -
分布式与集群的区别
注:本文为博主自己在网上搜集到的资料的摘抄,记录方便理解简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。再简单点说,分布式:一个业务分拆多个子业务,部署在不同的服务器上集群:同一个业务,部署在多个服务器上再简单的形容一下,就是 “分头做事”与“一堆人”的区别例如:原创 2015-10-14 09:50:55 · 997 阅读 · 0 评论 -
PHP autoload机制详解
转自互联网:(1) autoload机制概述 在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。这也是OO设计的基本思想之一。在PHP5之前,如果需要使用一个类,只需要直接使用include/require将其包含进来即可。下面是一个实际的例子:/* Person.cl原创 2015-11-26 11:25:20 · 624 阅读 · 0 评论 -
深入理解PHP的Session机制
今天在看鸟哥的 如何设置一个严格30分钟过期的Session 这篇文章的时候 对php的session机制产生了兴趣,在网上找了点资料来研究了下php会话管理系统支持许多配置选项,可以在自己的 php.ini 文件中设定 在php.ini对于session的配置中,session.save_handler 定义了来存储和获取与会话关联的数据的处理器的名字,默认为 files,需要注意的是个别的原创 2015-03-04 17:53:46 · 1859 阅读 · 0 评论 -
关于一笔试题(Iterator模式)
作者: Laruence( )本文地址: http://www.laruence.com/2008/10/31/574.html转载请注明出处中午的时候,收到一封求教信,是关于这样的一道面试题:使对象可以像数组一样进行foreach循环,要求属性必须是私有。刚接触到题的时候,我也没有考虑到Iterator模式,试了几个一般想法,失败以后。。。。就直接转载 2015-03-03 16:32:53 · 556 阅读 · 0 评论 -
php生成mysql数据字典
有时候我们拿到别人的数据库,却没有数据字典,这个php小程序帮你轻松解决。代码是网上找到的,当然,这段代码也仅仅是生成了数据字典,视图,存储过程等等是木有的哦。原创 2014-01-03 09:04:05 · 1458 阅读 · 0 评论 -
windows下配置64位的Apache2.4.7+PHP5.5.6+Mysql5.6+PhpMyAdmin环境
本文主要介绍的是windows-64位环境下搭建PHP5.5.6+Apache2.4.7+Mysql5.6+PhpMyAdmin现在大部分一键安装包多是32位的,也有部分是64位的,在这里我们将手动搭建64位的WAMP环境。原创 2014-03-06 17:38:40 · 4336 阅读 · 0 评论 -
解决zend studio不能提示代码问题
解决的办法一:在这个项目上面右键->configure->add php support 。然后系统会自动rebuild。这样再在项目的文件里面输入函数看看。(如果你想要zendstudio支持javascript的语法高亮和流行框架比如jquery的语法高亮也可以通过同样的方式来做,相关addXXX选项都在configure下)(方法一已经测试,可以解决,方法二是在网上找原创 2014-03-18 11:50:25 · 2028 阅读 · 0 评论 -
php中register_shutdown_function 函数详解
官方给出的解释为:Registers a callback to be executed after script execution finishes orexit() is called.即 “注册一个回调,在脚本执行完成后或在exit() 中止的时候被调用”下面我们看个例子:<?phpfunction test(){ echo '创建文件'; //此处要用绝对路径,原创 2014-03-19 16:44:37 · 2050 阅读 · 0 评论 -
php函数传值的几个细节,及对应实例代码
函数参数传递的方式有两种1 、传值方式。缺省情况下,函数参数通过传值的方式传递,因此即使在函数内部改变参数的值,它并不会改变函数外部参数的值。2 、传址方式。传址时只需在函数调用时在参数的前面加上“&”号即可。将函数外部的值的内存地址传递给内部的参数,在函数内部的所有操作都会改变函数外部参数的值。所以希望函数修改外部参数的值,必须使用传址传址方式。在PHP中,有传下面几种传值方式(网上原创 2014-03-31 10:35:19 · 1029 阅读 · 0 评论 -
PHP对象赋值详解
<?php //深入理解PHP对象赋值echo '';$obj = new StdClass;$obj->name = 'Pig';var_dump($obj); //object(stdClass)#1 (1) { ["name"]=> string(3) "Pig" }$copy = $obj; //$obj ,$copy都是new StdClass返回的同一个标识符的转载 2014-03-31 15:46:01 · 5902 阅读 · 0 评论 -
call_user_func和call_user_func_array的用法详解
call_user_func和call_user_func_array的用法详解原创 2014-03-21 10:34:43 · 3441 阅读 · 0 评论 -
深入理解PHP代码的执行的过程
一、前言语言是人们进行沟通和交流的表达符号,每种语言都有专属于自己的符号,表达方式和规则。 就编程语言来说,它也是由特定的符号,特定的表达方式和规则组成。语言的作用是沟通,不管是自然语言,还是编程语言,它们的区别在于自然语言是人与人之间沟通的工具, 而编程语言是人与机器之间的沟通渠道。 就PHP语言来说,它也是一组符合一定规则的约定的指令。 在编程人员将自己的想法以PHP语言实原创 2014-04-03 18:12:32 · 12065 阅读 · 0 评论 -
PHP中的闭包详解
什么是闭包?在编程领域我们可以通俗的说:子函数可以使用父函数中的局部变量,这种行为就叫做闭包。在PHP中匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数(callback)的参数。 当然,也有其他应用的情况。原创 2014-03-20 19:50:24 · 1625 阅读 · 0 评论 -
使用apacheBench对网站进行压力测试(ab压力测试)
ApacheBench 简称ab, 是 Apache 附带的一个小工具 , 专门用于 HTTP Server 的 benchmark testing , 可以同时模拟多个并发请求。通过下面的一个简单的例子和注释,相信大家可以更容易理解这个工具的使用。原创 2014-04-21 18:30:00 · 8652 阅读 · 0 评论 -
PHP解决URL中文GBK乱码问题
网上很多方法都是UrlEncode原创 2014-05-19 22:02:41 · 2221 阅读 · 0 评论 -
PHP模拟GET和POST提交数据
/* *@param String $url是请求地址 *@param Array $getData 是GET数据 *@param Array $postData */ public function Http($url, $getData, $postData) { if (!is_string($url) || (!i原创 2014-11-04 15:35:07 · 2500 阅读 · 0 评论 -
手动编译安装PHP遇到错误以及解决方法记录
手动遍历PHP的时候遇到的错误和解决方法记录原创 2015-02-10 17:03:49 · 8838 阅读 · 0 评论 -
PHP为什么会被认为是草根语言?
以下文字并没有非常多的技术词汇,所以只要对PHP感兴趣的人都可以看看。PHPer是草根吗?从PHP诞生之日起,PHP就开始在Web应用方面为广大的程序员服务。同时,作为针对Web开发量身定制的脚本语言,PHP一直秉承简单、开源的思想,这也使得PHP得以快速的发展,并且大力地推动Web2.0的出现与发展。但是,长期以来,PHPer(PHP Programmers)被认为是处于草根阶层的程序员,被认为是转载 2015-03-02 10:15:58 · 582 阅读 · 0 评论 -
理解PHP及Zend Engine的线程安全模型(ZTS)
在阅读PHP源码和学习PHP扩展开发的过程中,我接触到大量含有“TSRM”字眼的宏。在查找资料过程中发现有2篇文章写的不错,整理如下:深入研究PHP及Zend Engine的线程安全模型:http://blog.codinglabs.org/articles/zend-thread-safety.htmlPHP源码分析之线程安全模型:http://blog.csdn.net/h原创 2016-01-11 16:33:19 · 3422 阅读 · 0 评论