This question already has answers here:
Reference — What does this symbol mean in PHP?
(18个回答)
What does $$ (dollar dollar or double dollar) mean in PHP?
(7个答案)
2年前关闭。
我正在使用旧代码进行访问本地数据库的登录过程。这是我想在线发布的第一个Web项目。我开始使用的代码已弃用了功能,因此我一直在尝试使所有功能正常运行并加深对语言/过程的理解。
原始开发人员使用了变量$ link,两行之后,他们声明了全局$$ link。 (编辑:自从我第一次发布以来,我了解了一个变量变量,但是我仍然完全理解此用例。它可以用于什么用途)
这是我的第一个Web项目。我习惯于使用调试器来解决问题。
(18个回答)
What does $$ (dollar dollar or double dollar) mean in PHP?
(7个答案)
2年前关闭。
我正在使用旧代码进行访问本地数据库的登录过程。这是我想在线发布的第一个Web项目。我开始使用的代码已弃用了功能,因此我一直在尝试使所有功能正常运行并加深对语言/过程的理解。
原始开发人员使用了变量$ link,两行之后,他们声明了全局$$ link。 (编辑:自从我第一次发布以来,我了解了一个变量变量,但是我仍然完全理解此用例。它可以用于什么用途)
tep_db_connect() or die('Unable to connect to database server!');
function tep_db_connect($server = DB_SERVER, $username = DB_SERVER_USERNAME, $password = DB_SERVER_PASSWORD, $database = DB_DATABASE, $link = 'db_link')
{
global $$link;
$$link = new mysqli($server, $username, $password);
if (!$$link) {
die("Connection Failed: " . $mysqli_connect_error());
}
mysqli_select_db($$link, $database);
return $$link;
}
这是我的第一个Web项目。我习惯于使用调试器来解决问题。
最佳答案
我相信这可以视为“元”编程,但是正如已经提到的,这是一个变量变量。一个示例来说明可能是:
$a = '1';
$b = 'a';
echo $$b; // result: 1, can effectively be read as ${$b} -> ${a} -> $a
echo ${$b}; // same as above but a bit more obvious
10-02 17:24