我可以在不包含include的两个文件中访问变量吗?

时间:2019-06-24 08:39:08

标签: php variables

我想在文件a.php中创建变量

 <?php
 $string = "hi";
 ?>

并在文件b.php中使此代码有效,而不包含a.php

<?php
echo $string;
?>

edit:其中一个文件(a.php应该在cli上工作并执行一些操作(在true循环时会打开),b.php应该在Web界面的访问者端打开

谢谢;)

2 个答案:

答案 0 :(得分:0)

如果您想在不使用 Include Require 的情况下将变量缩放为两个文件,则唯一的方法是使用 cookies 会话变量,或者在情况允许的情况下,使用 GET POST 数据。

但是我想在您的情况下,您只想轻松地使用另一个文件中的变量。

使用会话变量

在您的 a.php

<?php
if(!session_id()) session_start();
$string = "hi";
if(!isset($_SESSION['hello'])) {
    $_SESSION['hello'] = $string;
}
?>

您可以在 b.php 中使用它:

<?php
if(!session_id()) session_start();

if(isset($_SESSION['hello']){
    echo $_SESSION['hello'];
}

?>

答案 1 :(得分:-1)

另一种黑客方式:您可以创建一个“传输”文件来写入( file_put_content($ fileName,$ fileContent,LOCK_EX))和读取( file_read_content($ fileName)其他文件。将文件标记为要写入很重要。只有一个进程可以同时写入文件。

检查文件已锁定:Test if file is locked