好吧这可能听起来像一个愚蠢的问题,但请耐心等待。我试图这样做,以便当人们去example.php?id = 1,example.php?id = 2,example.php?id = 3等他们看到从填充空白的包含文件中调用的不同数据。
我有一个名为$ offername的变量,我希望在该空间中显示$ offer1name,$ offer2name,$ offer3name,具体取决于$ _GET ['id']所说的内容。理想情况下,当有人转到example.php?id = 2时,$ offername将等于$ offer2name。
我想做这样的事情:
$ offername = $ offer。$ _ GET ['id']。name
但当然这不起作用。我该怎么办?
答案 0 :(得分:5)
更简洁的解决方案是使用多维数组。
例如,而不是$offername = ${offer.$_GET['id'].name};
使用
$offername = $offer[$_GET['id']]['name'];
并定义$ offer,如下所示:
$offer = array(
1 => array(
'name' => 'firstoffer',
),
2 => array(
'name' => 'secondoffer',
),
3 => array(
'name' => 'thirdoffer',
),
);
我发现变量变量难以阅读,而且大多数时候,当我看到它们使用时,数组会好得多。
答案 1 :(得分:1)
答案 2 :(得分:1)
PHP可以使用变量
所以你可以拥有$offer_variable_name = 'offer' . $_GET['id'] . 'name';
然后使用类似$offername = $$offer_variable_name
的内容。
答案 3 :(得分:0)
除了其他解决方案之外,您还可以:
$offername = ${'offer' . $_GET['id'] . 'name'};