如何在PHP中使用会话和Include语句?

如何在PHP中使用会话和Include语句?,php,session,logic,Php,Session,Logic,我有很多multple文件,包括一个到另一个,如下所示 File1包含在File2中,然后File2位于File3 现在我想从文件1中声明一个会话变量site\u user\u conutry,然后检查文件2,如果会话变量中没有任何值,那么只有我包含File1.php 我添加了session_start()在每个[年龄段,但仍然不起作用 请告诉我如何使会话在上述条件下工作。在文件2中 if ($_SESSION["site_user_country"] != null) { inclu

我有很多multple文件,包括一个到另一个,如下所示

File1
包含在
File2
中,然后
File2
位于
File3

现在我想从文件1中声明一个会话变量
site\u user\u conutry
,然后检查文件2,如果会话变量中没有任何值,那么只有我包含File1.php

我添加了
session_start()在每个[年龄段,但仍然不起作用

请告诉我如何使会话在上述条件下工作。

在文件2中

if ($_SESSION["site_user_country"] != null) 
{
    include_once(File3);
}
在文件2中

if ($_SESSION["site_user_country"] != null) 
{
    include_once(File3);
}

如何设置会话变量?应尝试如下设置:

$_SESSION['site_user_conutry'] = 'United-Kingdom';

您是否已将session_start()放在文档的最顶端,或者至少在输出任何信息之前?

如何设置session变量?您应该尝试这样设置:

$_SESSION['site_user_conutry'] = 'United-Kingdom';

您是否将session_start()放在文档的最顶端,或者至少在输出任何信息之前?

假设您包含的是具有代码执行功能的文件,而不是函数

包含File1并设置会话变量的代码必须在第一次执行时在File2上的代码之前执行

在下一个iTreactions中,会话将为您保存这些值

要设置会话变量,请使用$\u会话全局数组


$_SESSION["name"] = "value";

假设您包含的文件具有代码执行功能,而不是函数

包含File1并设置会话变量的代码必须在第一次执行时在File2上的代码之前执行

在下一个iTreactions中,会话将为您保存这些值

要设置会话变量,请使用$\u会话全局数组


$_SESSION["name"] = "value";

会话只在代码的第一行开始一次

文件说: 从版本4.4.3开始,在会话已启动时调用会话_start()将导致级别E_通知错误。此外,第二次会话启动将被忽略


如果file1包含在file2中,那么file2中的代码将在file1之前完成。因此,如果您在file1中声明的内容可能在file2中看不到(取决于代码…),无论如何,这不是php编程的现代方式。(请参阅oo和自动加载)

Do session\u只在代码的第一行启动一次

文件说: 从版本4.4.3开始,在会话已启动时调用会话_start()将导致级别E_通知错误。此外,第二次会话启动将被忽略


如果file1包含在file2中,那么file2中的代码将在file1之前完成。因此,如果您在file1中声明的内容可能在file2中看不到(取决于代码…),无论如何,这不是php编程的现代方式。(请参阅oo和u autoload)

是的,我正在声明您演示的会话。我还添加了会话_start()在每一页的顶部。如果您var\u dump($\u SESSION),您会得到什么?完全为空?是的,我正在声明您演示的会话。我还在每一页的顶部添加SESSION\u start()。如果您var\u dump($\u SESSION),您会得到什么?完全为空?