我对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*
创建由许多变量值组成的变量?
就我个人而言,我不会走这条路。它很复杂,令人困惑,几乎不是一个有用的解决方案。您是否考虑过使用嵌套数组来存储值?甚至创建一个对象?
作为一个数组,您可以有:
$ini = array('monday'=>array(), 'tuesday'=>array(), //etc);
$ini[$day]['closeStatus'] = 0;