Heim  >  Artikel  >  php教程  >  PHP页面间参数传递的四种方法详解,四种方法详解

PHP页面间参数传递的四种方法详解,四种方法详解

WBOY
WBOYOriginal
2016-06-13 08:41:40859Durchsuche

PHP页面间参数传递的四种方法详解,四种方法详解

                          2016-04-16    

定义page01.php和page02.php两个php文件,将page01中的内容想办法传递到page02,然后供我们继续使用。
--------------------------------------------------------------------------------
第一种:
使用客户端浏览器的cookie。cookie很容易理解,就是一个临时文件,可以把它看成一个储藏室,浏览器在浏览的过程中记录一些信息,就暂时存放在这里。
在page01中设置一个cookie。

代码如下:

<?<span>php 
       </span><span>setcookie</span>('mycookie','自灵'<span>);
</span>?>

就是这么简单,我们已经创建cookie完毕。
我们定义了一个变量mycookie,它的值是字符串'自灵'。
我们可以随便给cookie变量起名字,可以定义多个cookie变量。
在page02页面接受cookie。

 代码如下:

<?<span>php
     </span><span>$wuziling</span> = <span>$_COOKIE</span>['mycookie'<span>];
     </span><span>echo</span> <span>$wuziling</span><span>;
</span>?>

我们使用$_COOKIE[]提取cookie中的变量mycookie,将它的值付给$wuziling。然后简单的输出。
好了,到这里使用cookie从页面之间传递参数完毕。
--------------------------------------------------------------------------------
第二种:
使用服务器端的session。理解session是一件很容易的事情。与cookie的不同在于它是服务器端的临时储藏室。session常被称作会话。
在page01中设置一个session。

代码如下:

<?<span>php 
</span><span>session_start</span><span>();
</span><span>$_SESSION</span>["temp"]=<span>array</span>('123','456','789'<span>);
</span>?>

要想使用session,必须启动session。session_start();就是启动session的方法。一般要写在最前面。
第二个语句我定义了一个$_SESSION["temp"]数组,数组的名称是$_SESSION["temp"],里面存储了3个字符串。
在page02页面接受session。

 代码如下:

<?<span>php 
     </span><span>session_start</span><span>();
     </span><span>for</span>(<span>$i</span>=0;<span>$i</span><3;<span>$i</span>++<span>)
     {
             </span><span>echo</span> <span>$_SESSION</span>['temp'][<span>$i</span>].'<br />'<span>;
     }
</span>?>

首先启动会话。启动后我们在page01定义的变量已经可以使用了,不需要其他任何获取的操作,这里不同于cookie。
下面我们使用for循环将其内容输出。
【不要以为$_SESSION['temp'][$i]是一个二维数组,它是个一维数组,数组的名称是$_SESSION["temp"],虽然这个名称比较繁琐,数组的下标是'temp'】
【我们在写$_SESSION["temp"]时,temp加双引号或者单引号都是等价的。】
【这里我们定义会话变量时定义的是数组,也可以定义普通变量,就像cookie里面讲到的】
--------------------------------------------------------------------------------
第三种:
使用表单来传递。
page01.php这样写:

 代码如下:

<form action="page02.php" method="post">
     <input type="text" name="wuziling" />
     <input type="submit" name="submit" value="提交" />
</form>

表单内的属性action直接指定此表单内容传递到哪个页面。method指明了传递的方式。post代表使用消息传递,就像我们发短信一样。
page02.php这样写:

 代码如下:

<?<span>php 
     </span><span>$wu</span> = <span>$_POST</span>['wuziling'<span>];
     </span><span>echo</span> <span>$wu</span><span>;
</span>?>

用$_POST[ ]获取传递过来的变量值。这个变量名wuziling在表单的input标签的name属性里定义。
然后将其传递给另外一个变量$wu。这样我们就可以输出了。直接输出也是可以的,echo   $_POST['wuziling'];
【method的值也可以是get】
--------------------------------------------------------------------------------
第四种:
使用超链接传递参数。我们上网的很多操作都是点击超链接在网页之间跳来跳去。点的同时同样可以传递参数。
page01.php这样写:

 代码如下:

<?<span>php 
</span><span>$var</span> = 'I love you !'<span>;
</span>?>
<a href="<?php echo "page02.php?<span>new</span>=".<span>$var</span> ?>">get</a>

定义一个变量$var。
超链接a的href属性里写明要跳转到page02页面。后面加一个问号,一个自己定义的变量new【此名称在page02页面要使用】,new的值就是我们想传递的$var。
page02.php这样写:

 代码如下:

<?<span>php
     </span><span>echo</span>   <span>$_GET</span>['new'<span>];
</span>?>

使用$_GET[ ]获取new的值,然后就可以输出或做其他用途。
这时的浏览器地址栏可以直接看到new变量和它的值。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn