1

我对php很陌生,但遇到了一个问题。我有一个与星期几通话的数组

$days = array( 'monday', 'tuesday', 'wednesday', 'thurday', 'frieday', 'sunday',  'saturday' );

一周中的一整天也有一个for loop index i=0 i<7 i++,所以我不需要重复代码 7 次(每天 1 次),我每天都有打开、关闭、小时和大量信息..

所以我循环的某些部分需要为一个名为的通用变量赋值: $ini_XXXXX_close 其中 XXX 是星期几,所以($ini_$dias[$i]_close)一般来说

当我尝试这样做时:$ini_$dias[$i]_close=0;我得到了错误......所以我所做的是使用第三个变量..

$indexcloseini="ini_$dias[$i]_close";

然后 $$indexcloseini=0 成功生成变量 $ini_XXXXX_close=0; ( doble $$ 从 php 手册中读取)

但问题是当我稍后尝试将该变量与内部的任何其他值和 IF 语句进行比较时。完成的唯一方法是已经使用中间变量。

有没有其他简单的方法可以做到这一点.. 我阅读了 php 参考手册并尝试使用 {!} 和很多东西,但无法让它工作..

是否有任何功能可以将此“ $ini_$dias[$i]_close”转换为字符串,以便我可以制作

$*STRING CONVERSION FUNCTION of $ini_$dias[$i]_close* 

创建由许多变量值组成的变量?

4

1 回答 1

2

就我个人而言,我不会走那条路。它是复杂的、令人困惑的,而且几乎不是一个有用的解决方案。您是否考虑过使用嵌套数组来存储值?甚至创建一个对象?

作为一个数组,你可以有:

$ini = array('monday'=>array(), 'tuesday'=>array(), //etc);
$ini[$day]['closeStatus'] = 0;
于 2013-10-16T07:31:08.550 回答