php
使用变量
声明一个类(这行不通——但它在这里给你一个我的意图的想法):
$myname = "the_class";
class $myname {
...
}
i also tried:
define("MYNAME","the_class");
class MYNAME{
...
}
and I tried:
$myname = "the_class";
class $$myname {
...
}
这并没有真正帮助:
http://php.net/manual/en/language.variables.scope.php
http://us3.php.net/manual/en/keyword.class.php
非常感谢您的帮助
当然,使用php写入具有您想要的名称的文件,然后需要该文件。您也可以使用eval
,例如:eval("class $myname { ... };");
对于更复杂的情况,可以使用Zend的CodeGenerator
库(此处为示例)。
请不要给这个回答投票,也不要把它标记为答案。
Eugen Rieck的答案是最好的,但被埋在了评论中。
他链接到的答案显示了如何使用class_alias()将类命名为定义。如果你正在编写一个库类,并希望用户名是他们想要的,例如通过在配置文件中设置一个定义,这是很有用的。
所以如果你在写一个包含MyLibraryClass的库,你可以让它的用户名像LC这样简洁,这样他们就可以写LC::someFunction()或LC->someFunction而不必把整个东西写出来