PHP通过常量的值访问对象属性

时间:2011-09-02 11:42:27

标签: php object constants

我有一个玩家类,它有属性:$ infantry,$ vehicles和$ air。

当与玩家作战时,我不知道哪个属性被用作保存要使用的属性的数组被随机排列以创建随机顺序。

我尝试使用它,但它不起作用。奇怪的是,它没有给我空属性错误,所以我认为它指向一些属性:

<?php

$typeOrder = array(_INF_, _VEH_, _AIR_); // _INF_ const = "infantry" etc
$turnOrder = $typeOrder;
shuffle($turnOrder);
for($i = 0; $i < 3; $i++)
{
   $attType = $turnOrder[$i];
   print $p1->$attType;
}

?>

如何正确访问具有常量值的属性?

感谢。

1 个答案:

答案 0 :(得分:3)

它应该有效 - 只要存在$p1->infantry等。 PHP给你带来了什么错误?

顺便说一句,看看array_rand()