我想基于以下条件语句包含2个文件
<?php
if (isset($_SESSION['name']) && $_SESSION['name'] == true) {
include 'file_a.php';
}else{
include 'file_b.php';
}
?>
这是正确的方法吗?
答案 0 :(得分:1)
您可以尝试下一个代码:
if(session_id() == '') {
session_start();
include !empty($_SESSION['name']) ? 'file_a.php' : 'file_b.php';
}
答案 1 :(得分:1)
这取决于你的意思&#39;正确&#39;:
如果您的意思是&#39;它是否有效&#39;然后是的,你的代码会工作,没有语法错误。
如果你的意思是“它可以更漂亮”,那么也许它可以,但不管你是否想要ternary operators使用它都是个人喜好:
$toShow = isset($_SESSION['name']) && $_SESSION['name'] ? "file_a.php" : "file_b.php";
include $toShow;
同样,这是否比您之前的代码更好或更差,取决于您的个人意见。
TL; DR:是的,您的代码是正确的。