PHP对象的动态命名

3 php

如何为php对象动态分配名称?

例如,我如何将对象分配给var,该var是我用于创建对象的db行的id.

例如

$<idnum>= new object();
Run Code Online (Sandbox Code Playgroud)

其中idnum是我数据库中的id.

CMS*_*CMS 13

您可以使用双美元符号创建一个变量,其名称为另一个变量的值,例如:

$idnum = "myVar";

$$idnum = new object(); // This is equivalent to $myVar = new object();
Run Code Online (Sandbox Code Playgroud)

但要确保你真的需要这样做,如果你没有足够的照顾或你滥用这个"功能",你的代码会变得非常混乱......

我认为你可以更好地使用数组或散列表,而不是用动态创建的变量来污染全局命名空间.


Joh*_*ker 5

这个小片段对我有用

$num=500;
${"id$num"} = 1234;
echo $id500;
Run Code Online (Sandbox Code Playgroud)

基本上只需使用花括号括起变量名称并添加$;