2016-10-18 96 views
1

我试图实现简单的东西,并想知道是否有可能。谷歌搜索这次无济于事。可能这不可能,但我不确定。我有以下代码:通过串联访问php变量

<?php 
    //Enter your code here, enjoy! 

$query1="yay"; 
$query2="it"; 
$query3="works"; 

for($x=1;$x<=3;$x++){ 
    $query="\$query".$x; //I need to assign the above variables 
    echo $query; 
} 

?> 

我想要的输出是 “yayitworks”,而是我得到 “$ QUERY1 $ QUERY2 $ QUERY3”。有什么方法可以得到我的结果吗?我知道switch语句会帮助我实现这一点,但我只是好奇。

在此先感谢... :-)

+0

在美元符号前移除反斜杠? – Robert

回答

1

你想要的是可变的变量:如果你想有

$queries = array("yay", "it", "works"); 

for($x=0;$x<count($queries);$x++){ 
    $query = "\{$queries[$x]}"; //I need to assign the above variables 
    echo $query; 
} 

http://php.net/manual/en/language.variables.variable.php

$query = ${"query".$x}

+0

omg !!第一个变量函数,现在是变量变量。谢谢你的信息。我不知道这存在... :-) – user3889963

+0

@ user3889963我在我的原始答案中犯了一个错误,不知道你是否尝试过,但我只是编辑它来修复它,现在应该正常工作。 – Mogzol

+0

没问题...我检查了文档。感谢您的链接... :-) – user3889963

0

使用数组在一个变量中使用全路径=而不是=

for($x=0;$x<count($queries);$x++){ 
    $query .= "\{$queries[$x]}"; //I need to assign the above variables 
} 
echo $query;