Как получить доступ к переменной в двух файлах
У меня есть три файла - global.php,
test.php
, test1.php
global.php
$filename;
$filename = "test";
test.php
$filename = "myfile.jpg";
echo $filename;
test1.php
echo $filename;
Я могу прочитать эту переменную из файлов test и test1 по include 'global.php';
Теперь я хочу установить значение $filename
в test.php
и то же значение, которое я хочу прочитать в test1.php.
Я пробовал также с переменными сеанса, но из-за двух разных файлов я не могу захватить переменную.
Как этого добиться........
Спасибо за помощь заранее.....
4 ответа
Использование:
global.php
<?php
if(!session_id()) session_start();
$filename = "test";
if(!isset($_SESSION['filename'])) {
$_SESSION['filename'] = $filename;
}
?>
test.php
<?php
if(!session_id()) session_start();
//include("global.php");
$_SESSION['filename'] = "new value";
?>
test1.php
<?php
if(!session_id()) session_start();
$filename = $_SESSION['filename'];
echo $filename; //output new value
?>
Я думаю, что лучший способ понять это: у
вас есть один файл index.php с определенной переменной.
$indexVar = 'sometext';
Эта переменная видна во всем файле index.php . Но, как и функция, если вы включите другие файлы, переменная не будет видна, если вы не укажете, что эта переменная имеет глобальную область видимости.
Вам следует переопределить область действия этой переменной в вашем новом файле, например:
global $indexVar;
Тогда вы сможете получить доступ напрямую, вызвав его так, как вы были в своем основном файле. Вы можете использовать «эхо» в обоих файлах, index.php и любом другом файле.
Сначала вы начинаете сеанс в верхней части страницы.
Назначьте вашу переменную в ваш сеанс.
Проверьте это и попробуйте сами
test.php
<?php
session_start(); // session start
include("global.php");
$filename = "myfile.jpg";
$_SESSION['samplename']=$filename ; // Session Set
?>
test1.php
<?php
session_start(); // session start
$getvalue = $_SESSION['samplename']; // session get
echo $getvalue;
?>
Это просто, вам просто нужно определить свой глобал в файле A и получить к нему доступ с помощью $GLOBALS['varName'];
файл A: $filename="test.txt";
файл B: require_once 'fileA.php';
$ MYVAR =$GLOBALS['имя файла'];