42

所以我想知道当变量名用于多个 php 文件时,是否可以从特定的 php 文件中获取变量。一个例子是这样的:

<header>
 <title>
  <?php echo $var1; ?>
 </title>
</header>

page1.php 有$var1 = 'page1' page2.php 有$var1 = 'page2'

footer.php 应该有<a href="">$var1 from page1</a><a href="">$var1 from page2</a>

好的,这个例子有点抽象,但我可以做到尽可能短。我想你明白我的意思!所以它是我所追求的页脚!有什么解决办法吗?

4

4 回答 4

91

可以,但是最后一个包含中的变量将覆盖第一个包含中的变量:

我的文件.php

$var = 'test';

我的第二个文件.php

$var = 'tester';

测试.php

include 'myfile.php';
echo $var;

include 'mysecondfile.php';
echo $var;

输出:

测试

测试仪

我建议使用不同的变量名。

于 2012-10-30T08:26:28.527 回答
50

您还可以使用会话来传递少量信息。您将需要 session_start(); 在使用会话的 PHP 页面的顶部,否则变量将无法访问

page1.php

<?php

   session_start();
   $_SESSION['superhero'] = "batman";

?>
<a href="page2.php" title="">Go to the other page</a>

page2.php

<?php 

   session_start(); // this NEEDS TO BE AT THE TOP of the page before any output etc
   echo $_SESSION['superhero'];

?>
于 2012-10-30T09:30:52.787 回答
5

在第二页中使用include 'page1.php'是一种选择,但它会生成未定义变量的警告和错误。
您可以通过三种方法在另一个 php 文件中使用一个 php 文件的变量:

  • 使用会话将变量从一个页面传递到另一种
    方法:
    首先,您必须使用 php 命令在两个文件中启动会话

    会话开始();
    然后在第一个文件中考虑你有一个变量
    $x='var1'

    现在使用以下方法将 $x 的值分配给会话变量:
    $_SESSION['var']=$x;
    现在在任何另一个 php 文件中获取值:
    $y=$_SESSION['var'];//$y 是任何声明的变量

  • 使用 get 方法并在单击链接
    方法时获取变量

    <a href="page2.php?variable1=value1&variable2=value2">clickme</a>
    通过 $_GET 函数获取 page2.php 文件中的值:
    $x=$_GET['variable1'];//value1 be stored in $x
    $y=$_GET['variable2'];//vale2 be stored in $y

  • 如果您想使用按钮传递变量值,那么您可以通过以下方法使用它:

    $x='value1'
    <input type="submit" name='btn1' value='.$x.'/>
    在第二个 php
    $var=$_POST['btn1'];

于 2016-12-15T08:13:29.397 回答
0

您也可以使用file_get_contents

 $url_a="http://127.0.0.1/get_value.php?line=a&shift=1&tgl=2017-01-01";
 $data_a=file_get_contents($url_a);

 echo $data_a;
于 2017-02-28T06:01:44.320 回答