PHP - 变量的泛型变量名称

时间:2013-10-16 07:25:54

标签: php

我对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,其中sucessfull生成变量$ ini_XXXXX_close = 0; (doble $$从php手册中读取)

但问题是我后来尝试将该变量与内部的任何其他值和IF句子进行比较。 实现的唯一方法就是使用中间变量..

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

是否有任何函数可以将此“$ini_$dias[$i]_close”转换为字符串,以便我可以创建

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

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

1 个答案:

答案 0 :(得分:2)

我个人不会去那条路。它复杂,令人困惑,几乎没有任何有用的解决方案。 HJave你考虑过使用嵌套数组存储值吗?甚至创建一个对象?

作为一个数组,您可以:

$ini = array('monday'=>array(), 'tuesday'=>array(), //etc);
$ini[$day]['closeStatus'] = 0;