通过session来储存
创新互联是专业的那坡网站建设公司,那坡接单;提供成都网站设计、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行那坡网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
?php
session_start();
$_SESSION['username'] = "userName";
?
在其它页面直接取出就行了
?
session_start();
echo $_SESSION['username'];
?
通过url传向其它页面传递参数
other.php?user=xxx
或在php重定向到其它页面时
$username = "xxx";
$home_url = 'logIn.php?user='.$username;
header('Location:'.$home_url);
其它页面用$_GET["user"]来接收
3.通过表单向其它页面传送参数
其它页面用$_POST["user"]来接收
值传递是将右边变量的数据值本身,拷贝一份,赋值给左边变量。
例如:
可见:值传递之后,两个变量互不影响,相互独立,没有关系了,各自有各自的存放空间,改变一个,另一个不受影响。
原理如下:
引用传递是将右边变量对数据的引用关系,传给左边的变量
原理如下:
引用传递,后一个变量的值,会随着前一个变量的值的改变而改变。
1. 用继承,B继承A,其中A的mm方法里面的参数k作为方法的返回值,这样就可以给到A去使用了。
class B extends A{
public function tt() { $k = $this-mm(); }
}
2.在A类里面实例化B类。
class A{
public function tt() {
$class = new B();
$k=$class-mm();
}
}
两个方法的前提条件都是需要mm方法的k变量作为返回值,然后在A类调用的时候就可以得到这参数了。
3.将k参数储存到A类的属性中。
步骤大致和2方法差不多,也是要在tt方法里面实例化B类,但是B类的mm方法改为:
public function mm()
{ $this-k = $k; }
这样就不用k为返回值了,然后在A类中这样:
class A{
public function tt() {
$class = new B();
$class-mm();
$k = $class-k;
}
}
不保证代码的完全正确,但是思路是对的。
PHP类中,可能有多个属性参数。当使用new创建一个对象的时候,可能需要完成初始化操作,需要从外边传递参数进来。下面演示具体过程:
?php
class Test {
//定义私有变量name ,age
private $name, $age;
//构造函数,初始化的时候最先执行
public function __construct($name, $age) {
$this-
name = $name;
$this-age = $age;
}
public function showMsg() {
return "大家好,我叫".$this-name.";今年".$this-age."岁了!";
}
}
//定义参数
$name="百度知道";
$age=10;
//初始化类的时候传递参数
$te=new Test($name, $age);
echo $te-showMsg();
//输出结果:大家好,我叫百度知道;今年10岁了!
?