PHP码农进化史2
1.是否可以在类的外部访问一个属性是由访问修饰符来确定的。
2.从类的外部直接访问类的属性是糟糕的想法。面向对象的一个方法就是鼓励封装。在PHP中,我们一般通过__get()与__set()函数来实现对
属性的访问.如果不直接访问一个类的属性而是编写访问函数,那么可以通过一段代码执行所有访问。最初的访问函数如下所示:
class classname {
public $attribute;
function __get($name) {
return $this->$name;
}
function __set($name, $value){
$this->$name = $value;
}
}
3.此访问器函数的原理就是这样:只使用一段代码来访问特定属性。由于只有一个入口,就可以对要保存的数据进行检查,可以确保保存的数
据是有意义的数据。例如:
function _set ($name, $value) {
if( ($name == "attribute") && ($value >= 0) && ($value <= 100) ) {
$this->attribute = $value;
}
}
4.通过单一的访问入口,可以方便地改变潜在的程序实现。如果由于某种原因,需要改变属性$attribute的保存方式,访问器函数允许我们只
要修改一处代码,就可以完成此工作。
5.__get(),__set(),__isset(),__unset().
一般来说,总是把类的属性定义为private,这样更复合现实逻辑。
__get(),__set():用来获取和赋值其属性.他们不是默认存在的,而是我们手工添加进去的。
__isset(),__unset():来检查属性和删除属性。
6.__get()与__set(),__isset()与__unset()的一般添加方法。
//__get()方法用来获取私有属性.
private function __get($property_name) {
if (isset($this -> property_name)) {
return($this -> $property_name);
} else {
return(NULL);
}
}
//__set()方法设置私有属性
private function __set($property_name,$value) {
$this -> $property_name = $value;
}
//__isset()方法可以设为私有
private function __isset($property_name) {
相关文档:
PHP中居然没有读取BMP格式图片的函数,还好高人已经写好一个,我没看代码,反正能正常使用.
imagecreatefrombmp -- 从 BMP 文件或 URL 新建一图像
function imagecreatefrombmp($file)
{
global $CurrentBit, $echoMode;
$f=fopen($file,"r");
$Header=fread($f,2);
if($Header=="BM" ......
注意:之前我在网上找了好多的资料 NND都不能正常配置成功 搞得我是非常地郁闷!
找到这篇文章之后我终于配置成功了!哇好爽呀!只要按照 上面的步骤就一定能够成功的!
此文章的安装方法适用于Windows XP下的Apache+PHP+MySQL安装,同时也适用于Windows 2003系统下的安装和配置。
1. 安装环境
操作系统是 Window ......
在PHP.net的牛人回复中找到一个自动根据图片文件类型打开图片的PHP函数,很方便.
/**
*
* Loads a file based on its filetype and returns false if it fails.
*/
function imagecreatefromfile($path, $user_functions = false)
{
$info = @getimagesize($path);
if(!$info)
{ ......
一、安装
1. 首先安装SSH
sudo apt-get install ssh
2.安装MySQL(虽然现在最新版为5.1,但是还只能装5.0版本)
sudo apt-get install mysql-server-5.0
3.安装Apache
sudo apt-get install apache2
4.安装PHP
sudo apt-get install php5 libapache2-mod-php5
5.重启Apache
sudo /etc/init.d/apache2 restart ......