如何在php中将会话值与多文件文件夹名称进行比较?
如果要从多个文件夹中检索数据或读取文件。例如,有10个文件夹名为:如何在php中将会话值与多文件文件夹名称进行比较?,php,Php,如果要从多个文件夹中检索数据或读取文件。例如,有10个文件夹名为: A、 B,C,D,E,F,G,H,I,J 您将在会话中发送一个值,即如何将条件写入要读取的文件夹,而不是像这样写入一个长代码 if($_SESSION["val"]== 'A') { //code to read the folder } elseif ($_SESSION["val"]== 'B') { // co
- A、 B,C,D,E,F,G,H,I,J
if($_SESSION["val"]== 'A')
{
//code to read the folder
} elseif ($_SESSION["val"]== 'B')
{
// code to read the folder
} elseif ($_SESSION["val"]== 'c')
{
// code to read the folder
} elseif ($_SESSION["val"]== 'D')
{
// code to read the folder
}
有没有任何可能的方法使代码更短?因为为每个值编写if-else会很乏味。虽然不清楚您想要实现什么,但这可能有助于缩短代码:
$folders = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
if( in_array($_SESSION['val'], $folders) ) {
$the_folder = $_SESSION['val'];
// do whatever you wanna do here
}
如果必须对所有
If
语句执行相同的逻辑
$folders=['A','B','C','D','E','F','G','H','I','J']
if(在数组中($会话['val',$folders)){
//你的逻辑
}
如果要对每个If
语句执行不同的逻辑
开关($\u会话['val'])){
案例“A”:
//逻辑
打破
案例“B”:
//B的逻辑
打破
案例“C”:
//C语言的逻辑
打破
案例“D”:
//D逻辑
打破
案例“E”:
//E的逻辑
打破
}
您可以使用数组和循环。数组将存储可能的值以及每个值所指向的文件夹。然后,您的循环将遍历数组,查看会话val是否等于数组中的1,并相应地处理它。您可以创建文件夹数组,如$arr=[A、B、C、D、E、F、G、H、I、J]
,然后只需检查if(在数组中($\u session[“val”],$arr)){
谢谢,我还没想过,因为我是个初学者……这帮了我@vibhachosla,很高兴我能帮上忙