我试图使用a.php
在两个PHP文件b.php
和require()
之间传递变量。我了解到PHP变量只有一个范围,这意味着如果a.php
包含b.php
,它可以读取其变量。但是,我希望b.php
能够使用我当前的设置从a.php
读取变量。例如,如果$msg
设置b.php
但a.php
设置a.php
,我可以打印出<?php
$msg = "Welcome NEW USER ! We can't wait for you to check out our books!";
require("connect.php");
require("b.php");
$table = "SELECT * FROM `login`";
if ($query_run=mysqli_query($cnn,$table)){
$username = $_POST['username'];
$pw = $_POST['password'];
$sql = "INSERT INTO login (username,password) VALUES ('{$username}','{$pw}')";
if($cnn->query($sql)===TRUE){echo "Query ran successfully";}
else{echo "Error: ".$sql."<br>".$cnn->error;}
}
else{die("table connection failed");}
$cnn.close();
?>
。有一种简单的方法可以做到这一点吗?
b.php
<?php
echo "<h1>".$msg."</h1>
<form action='' method='post'>
Username: <input type='text' name='username'><br>
Password: <input type='text' name='password'><br>
<input type='submit' name='submit'>
</form>
"
?>
Python
Settings | Editor | Color Scheme | Python | Keyword argument
答案 0 :(得分:0)
使用$ _SESSION将允许您在不同文件之间传递data
。
a.php
中的
$_SESSION['myName'] = "John";
b.php
中的
echo $_SESSION['myName']
答案 1 :(得分:0)
我不确定您的问题是什么,但您的示例应该有效。这绝对有效:
a.php
<?php
$from_a = 'hey';
require "b.php";
print $from_b;
b.php
print $from_a;
$from_b = 'okay';
以上是完全有效的PHP,可以按预期工作,没有错误。另一个脚本所需的脚本可以完全访问其变量,反之亦然。
答案 2 :(得分:0)
如果您要求无限循环,请在每个文件中尝试require_once
。
但最好的解决方案是创建第三个文件,如c.php,并在其中包含b.php和a.php
答案 3 :(得分:0)
&#34;这意味着如果a.php包含b.php,它可以读取其变量。&#34;
我认为这个概念略有不同。当您调用语言构造require
时,它将读取并包含指定的文件,就好像它是在调用文件本身中编写的那样。
所以这个:
<?php
// File a.php
$somevar = 6;
require "b.php";
?>
<?php
// File b.php
echo $somevar;
?>
实际上与
相同<?php
// File a.php
$somevar = 6;
// File b.php
echo $somevar;
?>