php 参数传递

我们定义page01.php和page02.php两个php文件,将page01中的内容想办法传递到page02,然后供我们继续使用。--------------------------------------------------------------------------------第一种:使用客户端浏览器的cookie。cookie很容易理解,就是一个临时文件,可以把它看成一个储藏室,浏览器在浏览的过程中记录一些信息,就暂时存放在这里。在page01中设置一个cookie。复制代码 代码如下:<?php setcookie('mycookie','自灵');?>就是这么简单,我们已经创建cookie完毕。我们定义了一个变量mycookie,它的值是字符串'自灵'。我们可以随便给cookie变量起名字,可以定义多个cookie变量。在page02页面接受cookie。复制代码 代码如下:<?php $wuziling = $_COOKIE['mycookie']; echo $wuziling;?>我们使用$_COOKIE[]提取cookie中的变量mycookie,将它的值付给$wuziling。然后简单的输出。好了,到这里使用cookie从页面之间传递参数完毕。--------------------------------------------------------------------------------第二种:使用服务器端的session。理解session是一件很容易的事情。与cookie的不同在于它是服务器端的临时储藏室。session常被称作会话。在page01中设置一个session。复制代码 代码如下:<?php session_start();$_SESSION["temp"]=array('123','456','789');?>要想使用session,必须启动session。session_start();就是启动session的方法。一般要写在最前面。第二个语句我定义了一个$_SESSION["temp"]数组,数组的名称是$_SESSION["temp"],里面存储了3个字符串。在page02页面接受session。复制代码 代码如下:<?php session_start(); for($i=0;$i<3 i="" echo="" _session="" temp="" i="" br="">首先启动会话。启动后我们在page01定义的变量已经可以使用了,不需要其他任何获取的操作,这里不同于cookie。下面我们使用for循环将其内容输出。【不要以为$_SESSION['temp'][$i]是一个二维数组,它是个一维数组,数组的名称是$_SESSION["temp"],虽然这个名称比较繁琐,数组的下标是'temp'】【我们在写$_SESSION["temp"]时,temp加双引号或者单引号都是等价的。】【这里我们定义会话变量时定义的是数组,也可以定义普通变量,就像cookie里面讲到的】--------------------------------------------------------------------------------第三种:使用表单来传递。page01.php这样写:复制代码 代码如下:
表单内的属性action直接指定此表单内容传递到哪个页面。method指明了传递的方式。post代表使用消息传递,就像我们发短信一样。page02.php这样写:复制代码 代码如下:<?php $wu = $_POST['wuziling']; echo $wu;?>用$_POST[ ]获取传递过来的变量值。这个变量名wuziling在表单的input标签的name属性里定义。然后将其传递给另外一个变量$wu。这样我们就可以输出了。直接输出也是可以的,echo $_POST['wuziling'];【如果哪里不明白,请参考本版块的另外一个详细介绍表单提交的帖子】【method的值也可以是get】--------------------------------------------------------------------------------第四种:使用超链接传递参数。我们上网的很多操作都是点击超链接在网页之间跳来跳去。点的同时同样可以传递参数。page01.php这样写:复制代码 代码如下:<?php $var = 'I love you !';?> get定义一个变量$var。超链接a的href属性里写明要跳转到page02页面。后面加一个问号,一个自己定义的变量new【此名称在page02页面要使用】,new的值就是我们想传递的$var。page02.php这样写:复制代码 代码如下:<?php echo $_GET['new'];?>使用$_GET[ ]获取new的值,然后就可以输出或做其他用途。这时的浏览器地址栏可以直接看到new变量和它的值。1.值传递 复制代码 代码如下:<?php function exam($var1){ $var1++; echo "In Exam:" . $var1 . "
"; } $var1 = 1; echo $var1 . "
"; exam($var1); echo $var1 . "
"; ?> ------------------------------------------------------------------------------- 输出结果: 1 In Exam: 2 1 ------------------------------------------------------------------------------- 2.引用传递 复制代码 代码如下:<?php function exam( &$var1){ $var1++; echo "In Exam:" . $var1 . "
"; } $var1 = 1; echo $var1 . "
"; exam($var1); echo $var1 . "
"; ?> ------------------------------------------------------------------------------- 输出结果: 1 In Exam: 2 2 ------------------------------------------------------------------------------- 3.可选参数 复制代码 代码如下:function values($price, $tax=""){ $price += $prive * $tax; echo "Total Price:" . $price . "
"; } values(100, 0.25); values(100); 输出结果: Total Price: 125 Total Price: 100 ------------------------------------------------------------------------------- 4.如果传入的是一个对象,可以更改该对象的值 (实际上变量$obj记录的是这个对象的句柄,将$obj作为参数传入,完全可以对原对象进行操作。) 复制代码 代码如下:<?php class Obj{ public $name; public $age; public $gander; public function __construct($name, $age, $gander){ $this->name = $name; $this->age = $age; $this->gander = $gander; } public function show_info(){ echo $this->name . " " . $this->age . " " . $this->gander . "
"; } } function grow($obj){ $obj->age++; } function test(){ $obj = new Obj("Mr. zhan", "12", "male"); $obj->show_info(); grow($obj); $obj->show_info(); grow($obj); $obj->show_info(); } test(); ?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值