PHP类的自动载入机制,__autoload()函数
[ 2017-02-16 09:16:55 | 作者: admin ]
php的自动加载:
在php5以前,我们要用某个类或类的方法,那必须include或者require,之后才能使用,每次用一个类,都需要写一条include,麻烦
php作者想简单点,最好能引用一个类时,如果当前没有include进来,系统能自动去找到该类,自动引进~
于是:__autoload()函数应运而生。
通常放在应用程序入口类里面,比如discuz中,放在class_core.php中。
先讲浅显的例子:
第一种情况:文件A.php中内容如下
<?php
class A{
public function __construct(){
echo 'fff';
}
}
?>
文件C.php 中内容如下:
阅读全文…
在php5以前,我们要用某个类或类的方法,那必须include或者require,之后才能使用,每次用一个类,都需要写一条include,麻烦
php作者想简单点,最好能引用一个类时,如果当前没有include进来,系统能自动去找到该类,自动引进~
于是:__autoload()函数应运而生。
通常放在应用程序入口类里面,比如discuz中,放在class_core.php中。
先讲浅显的例子:
第一种情况:文件A.php中内容如下
<?php
class A{
public function __construct(){
echo 'fff';
}
}
?>
文件C.php 中内容如下:
<?php
function __autoload($class)
...function __autoload($class)
阅读全文…
SPL spl_autoload_register 初体验 ,重写类的声明函数autoload自动载入机制(转)
[ 2017-02-16 09:11:57 | 作者: admin ]
网上关于SPL spl_autoload_register的用法的例子有很多很多,自己也查看了很多,但感觉介绍得并不太详细,使自己真正能明白其中的原理苦闷了好一会儿。现将自己的理解记录下来。
关于 Standard PHP Library (SPL) 的 autoload 的方法,这些都是 PHP 5.1.2 之后才加上的方法。为了方便,这里做了一些设定。假设你有类文件,放在/home/user/class/foo.class.php, 你当前的文件为/home/user/webroot/test.php, 示例代码如下。
在文件test.php中:
阅读全文…
关于 Standard PHP Library (SPL) 的 autoload 的方法,这些都是 PHP 5.1.2 之后才加上的方法。为了方便,这里做了一些设定。假设你有类文件,放在/home/user/class/foo.class.php, 你当前的文件为/home/user/webroot/test.php, 示例代码如下。
在文件test.php中:
<?php
class autoload
{
public static function load( $class name )
{
$filename = "/home/user/class/".$classname."class.php";
...class autoload
{
public static function load( $class name )
{
$filename = "/home/user/class/".$classname."class.php";
阅读全文…
Firefox的poster的post请求
[ 2017-02-13 15:15:21 | 作者: admin ]
在学习到cookies的设置和发送的时候,表单的发送方法是"post",一看到post就不淡定了。于是决定好好了解怎样才能让自定义的Post请求发送成功,从而自己可以控制它!
p.s.使用poster的时候,第三部非常容易丢掉,造成没有发送post数据!!
流程:
1、输入我们要请求的url
2、然后在parameters选项卡那里添加“键值对”,键填写上面一步找到的“uname”,然后数值填写我们任意的数值。
3、然后切换到“Content to send”选项卡,可以看到这里有一个选项是body from parameters,未点击之前是一片空白!
点击之后,我们在“Parameters”中填写的键值对将会出现在发送的的内容的选项卡那里!其它的数值Poster会自动帮我们填写!
4、在发送方式中,选...
阅读全文…
p.s.使用poster的时候,第三部非常容易丢掉,造成没有发送post数据!!
流程:
1、输入我们要请求的url
2、然后在parameters选项卡那里添加“键值对”,键填写上面一步找到的“uname”,然后数值填写我们任意的数值。
3、然后切换到“Content to send”选项卡,可以看到这里有一个选项是body from parameters,未点击之前是一片空白!
点击之后,我们在“Parameters”中填写的键值对将会出现在发送的的内容的选项卡那里!其它的数值Poster会自动帮我们填写!
4、在发送方式中,选...
阅读全文…
z7max在 Win2003 下MTP驱动过程心得,方便copy文件
[ 2017-02-06 13:05:30 | 作者: admin ]
1.下载一个用于XP版本的windows media player11
2.用7ZIP或RAR等将这个安装包解压缩,
3.按顺序运行目录里的以下4个文件:(安装的时候需要选择兼容winxp)
umdf.exe
wmdbexport.exe
wmfdist11.exe
wmp11.exe
安装成功。
重启电脑,接上z7max,自动安装驱动,大功告成!
如果这个时候点mtp进去是空的,右键单击我的电脑,左键单击设备管理器,更新android手机图标的设备驱动程序即可。
2.用7ZIP或RAR等将这个安装包解压缩,
3.按顺序运行目录里的以下4个文件:(安装的时候需要选择兼容winxp)
umdf.exe
wmdbexport.exe
wmfdist11.exe
wmp11.exe
安装成功。
重启电脑,接上z7max,自动安装驱动,大功告成!
如果这个时候点mtp进去是空的,右键单击我的电脑,左键单击设备管理器,更新android手机图标的设备驱动程序即可。
NO_AUTO_VALUE_ON_ZERO影响AUTO_INCREMENT列的处理
[ 2017-02-03 16:14:16 | 作者: admin ]
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"
NO_AUTO_VALUE_ON_ZERO影响AUTO_INCREMENT列的处理。
一般情况,你可以向该列插入NULL或0生成下一个序列号。
NO_AUTO_VALUE_ON_ZERO禁用0,因此只有NULL可以生成下一个序列号。
如 果将0保存到表的AUTO_INCREMENT列,该模式会很有用。
(不推荐采用该惯例)。例如,如果你用mysqldump转储表并重载,MySQL 遇到0值一般会生成新的序列号,生成的表的内容与转储的表不同。
重载转储文件前启用NO_AUTO_VALUE_ON_ZERO可以解决该问题。
=============================================================================
使用phpmyadmin导出sql的时候,常常会出现SET ...
阅读全文…
NO_AUTO_VALUE_ON_ZERO影响AUTO_INCREMENT列的处理。
一般情况,你可以向该列插入NULL或0生成下一个序列号。
NO_AUTO_VALUE_ON_ZERO禁用0,因此只有NULL可以生成下一个序列号。
如 果将0保存到表的AUTO_INCREMENT列,该模式会很有用。
(不推荐采用该惯例)。例如,如果你用mysqldump转储表并重载,MySQL 遇到0值一般会生成新的序列号,生成的表的内容与转储的表不同。
重载转储文件前启用NO_AUTO_VALUE_ON_ZERO可以解决该问题。
=============================================================================
使用phpmyadmin导出sql的时候,常常会出现SET ...
阅读全文…
Resource id 问题分析
[ 2017-01-24 15:09:57 | 作者: admin ]
$db->get_one($result) ;
需要修改为有效的
$db->get_one($sql) ;
当$result不是sql的时候,就会出现 Resource id #15问题
需要修改为有效的
$db->get_one($sql) ;
当$result不是sql的时候,就会出现 Resource id #15问题
TypeError: $(…).validate is not a function
[ 2017-01-09 13:02:43 | 作者: admin ]
问题:TypeError: $(…).validate is not a function
解决:
1、可能没有载入相关的插件
2、可能没有优先载入 jquery.js
解决:
1、可能没有载入相关的插件
2、可能没有优先载入 jquery.js
phpmyadmin经常自动退出的问题,session引起的问题,以及auth_type参数说明
[ 2016-12-28 10:49:28 | 作者: admin ]
由于session使用了memcache,造成phpmyadmin经常出现不稳定的现象,表现为进入后数秒可能退出重新登录又可以了。
p.s. 发现把phpmyadmin改为 auth_type参数的值修改为 http 就可以了
参考:
$cfg['Servers'][$i]['auth_type'] string ['HTTP'|'http'|'cookie'|'config'|'signon']
Whether config or cookie or HTTP or signon authentication should be used for this server.
#注释:auth_type可选的参数有:http,cookie,config,signon
'config...
阅读全文…
p.s. 发现把phpmyadmin改为 auth_type参数的值修改为 http 就可以了
参考:
$cfg['Servers'][$i]['auth_type'] string ['HTTP'|'http'|'cookie'|'config'|'signon']
Whether config or cookie or HTTP or signon authentication should be used for this server.
#注释:auth_type可选的参数有:http,cookie,config,signon
'config...
阅读全文…