很多站长朋友们都不太清楚php插件的封装,今天小编就来给大家整理php插件的封装,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 eclipse 4.3 安装php插件 2、 ThinkPHP中怎么使用自定义的封装类 3、 什么是php中的封装 4、 PHP 继承、封装、多态 5、 php插件模式如何实现 eclipse 4.3 安装php插件首先,安装配置Apache和php环境。
安装不多说,Apache是个msi文件,php只要解压缩就可以了。
配置比较烦,步骤如下:
1. 编辑php.ini
1) extension_dir = "./" 修改为 extension_dir = "C:/php-5.2.6/ext" 2) ;extension=php_mysql.dll”和“;extension=php_gd2.dll”,去掉前面的分号,即把 ;extension=php_mysql.dll 改为 extension=php_mysql.dll 把 ;extension=php_gd2.dll 改为 extension=php_gd2.dll 3).保存好php.ini,然后重起apache
2.修改Apache/conf下的httpd.conf,在文件尾部添加:
LoadModule php5_module "C:/php-5.2.6/php5apache2_2.dll"AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phpsAction application/x-httpd-php "/php/php-cgi.exe"AddType application/x-httpd-php .htmlAddType application/x-httpd-php .htmAddDefaultCharset UTF8
PHPIniDir "C:/php-5.2.6"
3.
在环境变量的Path设置下添加:
C:\php-5.2.6;C:\php-5.2.6\ext
经过上述配置,在Apache/htdocs目录下创建一个php测试文件index.php如下:
Code
记得重新启动Apache。
打开IE在地址栏输入:,如果能工作就表示php和apache能工作了。
2
配置Eclipse的PHP开发,调试环境。
1. 安装Eclipse.就是解压缩到一个目录
2. 安装DLTK.
把下载到的文件解压缩到某目录下,如:F:"PHP"PDT"dltk-core-I-I200809081043-200809081043-incubation,启动Eclipse->Help->Software Updates->Available Software -> Add Site -> Local -> 选择刚才的解压缩目录,安装之。
3. 安装PDT2.0
根DLTK安装类似。
4. 安装ZDebugger
把下载到的ZendDebugger-5.2.14RC9-cygwin_nt-i386.zip解压缩,目录下有一个readme.txt,按照上面说的安装就行了,根据我安装的实际情况执行readme.txt的结果如下:
1) 从5_2_x_comp目录下选择ZendDebugger.dll,copy到C:\php-5.2.6\ext下面
2) 在php.ini文件中添加:
zend_extension_ts=C:/php-5.2.6/ext/ZendDebugger.dllzend_debugger.allow_hosts=localhost,127.0.0.1
zend_debugger.expose_remotely=always
3) 将dummy.php文件copy到C:\Program Files\Apache Software Foundation\Apache2.2\htdocs下面
5. 配置Eclipse及Apache
1) 配置Apache:
比如我在 E:\EclipseWorkspace下放置所有的Eclipse工程,那么修改Apache/conf/httpd.conf,在文件结尾添加:
Alias /Workspace/ "E:/EclipseWorkspace/"<Directory "E:/EclipseWorkspace/"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all
</Directory>
这样做的好处是,所有php工程都共享一个apache配置(看下面如何设置)。
2)配置Eclipse:
打开Eclipse->Window->Preferences->PHP:
PHP Executables->Add,如图1:
PHP Servers->New,如图2:
注意URL栏中添加了Workspace,这个是在httpd.conf中添加的目录别名。
PHP Debug,如图3,选择合适的Debugger,Server
至此,配置完成。
记得再次重新启动Apache。
最后,建一个测试程序,看看效果如何:
新建一个PHP Project命名叫FirstPHPTest, 当然使用的是我们的E:\EclipseWorkspace作为Eclipse的workspace目录。
在工程中新建PHP File, 比如使用上面的index.php。
当在index.php上右键 Run As->PHP Web Page时就可以看到类似如图4:
就到这里吧,休息,休息一下。
ThinkPHP中怎么使用自定义的封装类类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php;
类的命名空间地址和所在的路径地址一致,例如 Home\Controller\UserController类所在的路径应该是 Application/Home/Controller/UserController.class.php;
确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写);
类名和文件名一致(包括上面说的大小写一致),例如 UserController类的文件命名是UserController.class.php, InfoModel类的文件名是InfoModel.class.php, 并且不同的类库的类命名有一定的规范;
类的导入加载可以参考手册的命名空间和自动加载,下面是地址:
命名空间:
自动加载:
什么是php中的封装封装是php面向对象的其中一个特性,将多个可重复使用的函数封装到一个类里面。在使用时直接实例化该类的某一个方法,获得需要的数据
如果是私有的方法和属性值,外部无法访问,具有一定的保护作用。
面向对象之封装 例子
class A{
public $name = '老王';
// protected $name = '老王';
//private $name = '老王';
//自己访问
public function saya(){
return $this->name;
}
}
//实例化对象
$b = new A;
//public:外部、家族、自己都可以访问
//protected:家族和自己都可以访问,外部无法访问
//private:自己可以访问,外部和家族都无法访问
echo '外部访问:'.$b->name.'<br>'; //如果是私有的,访问不了
echo '家族访问:'.$b->sayb().'<br>';
echo '自己访问:'.$b->saya().'<br>';
PHP 继承、封装、多态-子类只能继承父类的非私有属性
-子类继承父类后,相当于将父类的属性和方法copy到子类,可以直接使用$this调用该属性;
-php只能单继承,不支持一个类继承多个类。但是一个类可以进行多层继承
类实现封装是为了不让外面的类随意修改一个类的成员变量,所以在定义一个类的成员的时候,我们使用private关键字设置这个成员的访问权限只能被这个类的其他成员方法调用,而不能被其他类中的方法调用,即通过本类中提供的方法来访问本类中的私有属性
-所以在该类中我们会提供一个访问私有属性的方法
-然后我们一般会定义两个方法来实现对一个变量的操作,即__get()和__set()方法
一个类被多个子类继承,如果这个类的某个方法,在多个子类中,表现出不同的功能,我们称这种行为为多态(同一个类的不同子类表现出不同的形态)
-子类继承父类->子类重写父类的方法->父类引用指向子类对象
php插件模式如何实现(1)建立一个数组,这个数组专门用于保存钩子标识
* (2)建立一个函数,该函数可以把要执行的插件函数名称放到钩子上
* (3)建立一个函数,该函数可以执行钩子上的所有插件函数以及可以传入插件函数的参数
* (4)所谓的钩子是什么?这是一个很蛋疼的东西, 就是一个名称而已,
* 这个名称就用来做标识用的,就像人的姓名一样,没有什么特别,你可以随便起,但是执行的时候就要用它,
* 就好像你叫我去做事,就得叫我名字一样
* (5)什么是插件函数?把函数的名称挂在上面所说的钩子上面,然后执行的时候,只需把钩子的函数名称全部遍历出来,并执行这些函数就可以实现插件的功能了
* (6)怎么才能更加明白?把下面的代码看懂,分解实现,自己一小步一小步的写一遍。如果看不懂,想想为什么?是有些系统函数卡住了,还是逻辑有问题
关于php插件的封装的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php插件的封装 php怎么封装app的详细内容...