0

我想根据以下条件语句包含 2 个文件

<?php 
 if (isset($_SESSION['name']) && $_SESSION['name'] == true) { 
 include 'file_a.php'; 
 }else{ 
 include 'file_b.php';
 }
 ?>

这是正确的方法吗?

4

2 回答 2

1

这取决于您所说的“正确”是什么意思:

如果您的意思是“它是否有效”,那么是的,您的代码将起作用并且没有语法错误。

如果您的意思是“它可以更漂亮”,那么也许可以,但是是否要使用三元运算符是个人喜好:

$toShow = isset($_SESSION['name']) && $_SESSION['name'] ? "file_a.php" : "file_b.php";
include $toShow;

同样,这是否比您以前的代码更好或更差,取决于您的个人意见。

TL;DR:是的,您的代码是正确的。

于 2014-05-11T12:52:10.150 回答
1

您可以尝试下一个代码:

if(session_id() == '') {
   session_start();
   include !empty($_SESSION['name']) ? 'file_a.php' : 'file_b.php';
}
于 2014-05-11T12:38:36.213 回答