以下是php http协议的二个例子,有需要的朋友,参考下了。
1、通过http响应,控制浏览器在一定时间跳转。
<?php
//通过http响应,控制浏览器在一定时间跳转
//3秒 浏览器跳转到指定url
//header("Refresh: 3; url=http://www.");
header("Refresh: 3; url=http://localhost/htdocs/test.php");
?>
2、设置禁用缓存,通过httpwatch抓包工具可以查看。
<?php
//禁用缓存
header("Expires: -1");
header("Cache-Control: no-cache");
header("pragam: no-cache");
echo "禁用缓存"; //by www.
?>在类中自定义构造方法的基本语法:
//php5
[修饰符]function __construct([参数列表]){
}
//php4
[修饰符]function 类名([参数列表]){
}
学编程,新手学php 面向对象编程,多看例子,多练习,进步就会很快。
再好的php 教程,也教不会你写代码,只能自己多实践!
来看具体的例子吧,这样才好理解。
<?php
/**
php 构造方法
* by www.
*/
class Person{
public $name;
public $age;
//构造方法 php5
public function __construct($name,$age){
$this->name=$name;
$this->age=$age;
}
//构造方法 php4 写在这里是php5为了兼容PHP4
public function Person($name,$age){
$this->name=$name;
$this->age=$age;
}
}
$p1=new Person("老大",27);
echo $p1->name;
$p1=new Person("小二",26);
$p1=new Person("小三",24);
?>
注意:
1)、$this 的理解:
1、$this 本质可以理解就是这个对象的地址
2. 哪个对象使用到$this, 就是哪个对象地址
3. $this不能在类外部使用
2)、构造方法的理解:
构造方法名和类名相同(php4版),php5版的构造方法名可以和类名相同,也可以是__construct()。
构造方法的默认访问修饰符是public,同时构造方法没有返回值。
创建新对象成功后,系统自动的调用该类的构造方法。
一个类有且只有一个构造方法,在php5后虽然__construct() 和 类名() 可以共存,但是实际上也只能使用一个。
如果没有给类自定义构造方法,则该类使用系统默认的构造方法。
如果给类自定义了构造方法,则该类的默认构造方法被覆盖。
有了以上的学习,php 面向对象之构造函数不再难了吧。
到于什么是php 面向对象的静态变量,在以前的php 教程中介绍的很多了,大家可以回顾一下。
来看今天的问题,有一群朋友在玩捉迷藏游戏,不时有新的小朋友加入,请问如何知道现在共有多少人在玩?请使用面向对象的思想,编写程序解决。
有二种方法可以解决这个问题:使用全局变量和静态变量。
<?php
//有一群朋友在玩捉迷藏游戏,不时有新的小朋友加入,
//请问如何知道现在共有多少人在玩?
//请使用面向对象的思想,编写程序解决。
/*
//1种方法使用全局变量
global $global_nums;
//先声明全局变量后再对它进行赋值
$global_nums=0;
class Child{
public $name;
//构造方法
public function __construct($name){
$this->name=$name;
}
//定义一个方法统计人数
public function allPlay(){
//先声明使用全局变量
global $global_nums;
$global_nums+=1;
echo $this->name."加入游戏.<br/>";
}
}
$p1=new Child("lily");
$p1->allPlay();
$p2=new Child("lucy");
$p2->allPlay();
$p3=new Child("kucy");
$p3->allPlay();
echo $global_nums;
//by www.
*/
//第二在类中 使用静态变量
class Child{
public $name;
//在类中声明静态变量
public static $allPlay=0;
public function __construct($name){
$this->name=$name;
}
//统计人数
public function addPlay(){
//在类中使用静态变量。在类中有下面2中方式访问静态变量
//self::$静态变量名和类名::$静态变量名
//self::$allPlay+=1;
Child::$allPlay+=1;
echo $this->name."加入游戏.<br/>";
}
}
$p1=new Child("lily");
$p1->addPlay();
$p2=new Child("lucy");
$p2->addPlay();
$p3=new Child("kucy");
$p3->addPlay();
$p4=new Child("uucy");
$p4->addPlay();
//在类外只有一种方式访问静态变量:类名::$静态变量名
echo Child::$allPlay;
?>