zend

php的spl_autoload_register与zend framework的Zend_Loader_Autoloader

风格不统一 提交于 2020-02-24 14:25:36
初初使用php的时候,引用其他类,都是首先获取类的局对路径,然后通过require_once导入。 那么在child继承parents之前,先导入parents.php <? php require_once realpath ( dirname ( dirname ( __FILE__ )) . ' /PParent.php ' ); class PSon extends PParent { function __construct(){ } } 这样做,对于类结构简单的情况,发现不出来问题(由于当初需要速成php,完成外接的项目,所以就这样做了) 当一个php文件中需要引用的类非常多的时候,而且每次编译的时候,用不了几个类,还用上述的方法,就会导致大部分的文件导入时多余的,所以php的autoload功能(动态加载php文件)就应运而生了。 今天刚学习了这个,现在记录一下。由于我做项目用的是zend_framework,所以同时分析了zend_framework中封装的zend_loader_autoloader的实现。 首先是php5的API----》spl_autoload_register(使用于(PHP 5 >= 5.1.2)) 使用的步骤如下:   1、定义autoload方法(方法名自定义就可以);   2、用spl_autoload

Zend Framework 解析之 Zend_Loader_autoloader_Interface 接口说明

牧云@^-^@ 提交于 2020-02-24 14:23:56
在我们了解了 Zend_Loader_Autoloader自动加载机制 之后,下面看下autoloader接口: ZF的良好设计,使得其有很好的扩展性,Zend_Loader_autoloader_Interface 就是出于该目的设计的。 例如,在研发过程中你可能需要自定义自己的加载器,以满足特定的需求,Zend Framework中自定义加载器可以有以下几种形式: 1、一个实现了Zend_Loader_Autoloader_Interface接口的对象。例如: 这里的my_Autoloader类必须实现 Zend_Loader_autoloader_Interface 这个接口,即必须实现autoload($class)方法。 2、 包含静态自动加载回掉(callback)方法的类。例如: 此例,注册时使用 $autoloader -> pushAutoloader ( array ( 'my_Autoloader' , 'autoload' ) , 'myNamespace' ) ;完成该加载器的注册。 3、 一个独立的功能函数。例如: 来源: https://www.cnblogs.com/shyue/archive/2012/04/16/2451681.html

Windows XP下全新安装Apache2,PHP5,MYSQL5,Zend的简单过程

孤街浪徒 提交于 2020-02-20 07:57:45
简介:这是Windows XP下全新安装Apache2,PHP5,MYSQL5,Zend的简单过程的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。 class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=324010' scrolling='no'> 一、下载地址:      Apache2.0.50 :http://httpd. apache .org/download.cgi   PHP5.0.2 :http://cn2. php .net/get/ php -5.0.2-Win32.zip/from/a/mirror   MYSQL5.0.2:http://dev. mysql .com/downloads/ mysql /5.0.html   Zend2.5.2 :http://www.zend.com/store/free_download.php?pid=13]      软件的安装偶就不说了,其中只有PHP下的是zip包,直接解压就可以了。      安装顺序就是上面列出来的顺序,Zend我是最后等所有的运行都没问题后才装的。       二、简单安装过程:      (一)Apache:   Apache2.0.50的安装很简单

Ubuntu 16.04 LTS 安装配置 Nginx 1.10.0 Php7.0-FPM

家住魔仙堡 提交于 2020-02-15 04:33:39
1. 安装Nginx,Php-7.0 ~$ sudo add-apt-repository ppa:nginx/stable ~$ sudo apt-get update ~$ sudo apt-get install nginx ~$ nginx -v nginx version: nginx/1.10.0 ~$ sudo apt-get install php ~$ php -v PHP 7.0.4-7ubuntu2.1 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies 2. 配置Nginx的监听端口为8080(Apache2的服务已经安装在我的系统中了,默认的监听端口80被占用)。 ~$ sudo vim /etc/nginx/sites-available/default server { listen 8080 default_server; listen [::]:8080 default_server; 3. 配置Nginx和Php7.0

Zend Server 安装与配置图文教程

为君一笑 提交于 2020-02-03 08:09:39
Zend Server是一款专业的PHP Web开发应用服务器,一些初次接触并使用此程序的朋友可能不太了解安装方法,本文为您提供了Zend Server 安装与配置图文教程,欢迎大家阅读,并提出自己的意见和问题,我们一起来学习!   首先要下载ZendServer软件   下载地址: http://www.zend.com/en/products/server/downloads   运行安装文件(ZendServer-CE-php-5.3.2-5.0.1-Windows_x86.exe)开始安装,选项请参照我的选择。   这里不做改动,维持默认选择即可   点击Browse按钮更改安装目录为D盘   更改Web Server Port为85 以避免跟IIS冲突   安装完成因Zend Server存在配置文件编码的错误,需要手工做更改。   用记事本打开D:Program FilesendendServeretcendEnablerConf.xml文件。   将 <?xml version="1.0" encoding="UTF-8"?> 更改为 <?xml version="1.0" encoding="UTF-8"?>   在控制面板中打开Apache Service Monitor(右键点击图中第二排第一个图标)   重新启动Apache(点击Restart按钮)  

简单描述PHP发展历程

不想你离开。 提交于 2020-02-01 00:43:42
PHP简介 PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。 PHP是通用服务器端脚本编程语言,其主要用于web开发以实现动态web页面,它也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一个命令行接口,因此,其也可以在大多数系统上作为一个独立的shell来使用。Rasmus Lerdorf于1994年开始开发PHP,它是初是一组被Rasmus Lerdorf称作“Personal Home Page Tool”的Perl脚本,这些脚本可以用于显示作者的简历并记录用户对其网站的访问。后来,Rasmus Lerdorf使用C语言将这些Perl脚本重写为CGI程序,还为其增加了运行Web forms的能力以及与数据库交互的特性

浅谈PHP代码执行的大致流程(opcode)

有些话、适合烂在心里 提交于 2020-02-01 00:36:51
说到这个代码执行流程啊,咱也不说太多,先给大家分享一张图片: 怎么样?有点了解了么。说实话,单看这个,我本人是有点懵的,不过,不要怕。咱们来慢慢地看下。 首先,在网上找的信息说PHP代码执行的顺序是这样的,第一步是词法分析,第二步是语法分析,第三步是转化为opcode,第四部也就是顺序执行这些opcode了。 聪明如各位看到这里,再返回上面看一下这张图片,肯定就会有不一样的感觉了。咱们借用一句话来阐述这几个步骤:当PHP拿到一段代码后,经过词法解析、语法解析等阶段后,源程序会被翻译成一个个指令(opcodes),然后ZEND虚拟机顺次执行这些指令完成操作。 我们都知道,PHP本身是用C实现的,因此最终调用的也是C的函数,实际上,我们可以把PHP看做一个C开发的软件。既然如此,那么PHP的代码执行的核心也就是翻译出来的一条一条指令,在这里就是opcode。 那么,我们就可以把opcode看成是PHP代码执行的最基本单位。所以PHP代码执行的本质也就可以理解为,我们的代码最终被翻译为一组opcode处理函数,完事之后再顺序执行。 有了这些认知之后,我们就来看下这个opcode究竟是什么鬼。本质上一个opcode由两个参数(op1,op2)、返回值和处理函数组成。它的官方解释就是PHP脚本编译后的中间语言,类似于java中的bytecode或者是.net中的MSL。 它的作用就是如下:

php: zend server 安装及相关配置

倖福魔咒の 提交于 2020-01-31 09:31:27
运行安装文件(ZendServer-CE-php-5.3.2-5.0.1-Windows_x86.exe)开始安装,选项请参照我的选择。 这里不做改动,维持默认选择即可 点击Browse按钮更改安装目录,比如这里设置的是D盘 更改Web Server Port为85 以避免跟IIS冲突,如果你没有IIS那么没有关系的。 错误1: 安装完成因Zend Server存在配置文件编码的错误,需要手工做更改。 用记事本打开D:\Program Files\Zend\ZendServer\etc\ZendEnablerConf.xml文件。 将 锘??xml version="1.0" encoding="UTF-8"?> 更改为 <?xml version="1.0" encoding="UTF-8"?> 否则会无法启动zend server,网页显示错误500。 在控制面板中打开Apache Service Monitor(右键点击图中第二排第一个图标) 重新启动Apache(点击Restart按钮) 在浏览器中打开地址:http://localhost:10081/ZendServer/ 也可在开始菜单中找到Zend Server的快捷方式打开Zend Server配置界面做一下配置 勾选同意协议单选框。 为Zend Server设置一个密码 去除Email通知选择

php的发展历史

可紊 提交于 2020-01-30 03:27:43
php最初就是为了快速构建一个web页面而迅速被大家广为接受的。它的好处是在代码中能内嵌html的代码,从而让程序员能再一个页面中同时写html代码和php代码就能生成一个web页面。 这篇文章用时间轴的角度来记录一下php的历史。 PHP之父Rasmus Lerdorf PHP版本历史 1995年初 PHP1.0诞生 Rasmus Lerdof发明了PHP,这是简单的一套Perl脚本,用来跟踪访问者的信息。这个时候的PHP只是一个小工具而已,它的名字叫做“Personal Home Page Tool”(个人主页小工具)。 1995年6月 PHP2.0诞生 Rasmus Lerdof用C语言来重新开发这个工具,取代了最初的Perl程序。这个新的用C写的工具最大的特色就是可以访问数据库,可以让用户简单地开发动态Web程序了。这个用C写的工具又称为PHP/FI。它已经有了今天php的一些基本功能了。 自Rasmus在1995年6月将PHP/FI发布源码之后,到1997年,全世界大约有几千个用户(估计)和大约50000个域名安装。 1998年6月 PHP3.0诞生 虽然说98年6月才正式发布php3.0,但是在正式发布之前,已经经过了9个月的公开测试了。 Andi Gutmans和Zeev Suraski加入了PHP开发项目组。这是两个以色列工程师,他们在使用PHP

php发展起源

こ雲淡風輕ζ 提交于 2020-01-30 03:23:28
PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作 递归缩写 。PHP于1994年由 Rasmus Lerdorf 创建,刚刚开始是 Rasmus Lerdorf 为了要 维护 个人网页而制作的一个简单的用 Perl 语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。后来又用 C语言 重新编写,包括可以访问 数据库 。他将这些程序和一些 表单 直译器整合起来,称为 PHP/FI。PHP/FI 可以和 数据库 连接,产生简单的 动态网页 程序。 在1995年以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档。并且发布了PHP1.0!在这的版本中,提供了访客 留言本 、访客计数器等简单的功能。以后越来越多的网站使用了PHP,并且强烈要求增加一些特性。比如 循环语句 和数组 变量 等等;在新的成员加入开发行列之后,Rasmus Lerdorf 在1995年6月8日将 PHP/FI 公开发布,希望可以透过社群来加速程序开发与寻找错误。这个发布的版本命名为 PHP 2,已经有 PHP