(PHP)通过循环声明类属性

(PHP)通过循环声明类属性,php,Php,我想使用循环在类内创建属性 class Example { for( $i=0; $i<5; $i++ ) { public $num . $i; } } 类示例 { 对于($i=0;$i您可以做的是在类的 class Example{ public function __construct(){ for($i=0; $i<5; $i++) $this->{'nu

我想使用循环在类内创建属性

class Example           
{
    for( $i=0; $i<5; $i++ )  
    {   
    public $num . $i;
    }

}
类示例
{

对于($i=0;$i您可以做的是在类的

class Example{
    public function __construct(){
        for($i=0; $i<5; $i++)
            $this->{'num' . $i} = $i;
    }
}
这将为您提供如下对象:

object(Example)#1 (5) {
  ["num0"]=>
  int(0)
  ["num1"]=>
  int(1)
  ["num2"]=>
  int(2)
  ["num3"]=>
  int(3)
  ["num4"]=>
  int(4)
}

您可以做的是在类的

class Example{
    public function __construct(){
        for($i=0; $i<5; $i++)
            $this->{'num' . $i} = $i;
    }
}
这将为您提供如下对象:

object(Example)#1 (5) {
  ["num0"]=>
  int(0)
  ["num1"]=>
  int(1)
  ["num2"]=>
  int(2)
  ["num3"]=>
  int(3)
  ["num4"]=>
  int(4)
}

您所做的是错误的sytax。除了方法或属性声明之外,您不能在类中直接拥有任何内容。

要创建动态属性,请执行以下操作

像这样的()


您所做的是错误的sytax。除了方法或属性声明之外,您不能在类中直接拥有任何内容。

要创建动态属性,请执行以下操作

像这样的()


您可以使用构造函数来实现这一点:

class Example           
{
   public function __Construct(){
      for( $i=0; $i<5; $i++ )  
      {   
       public $this->{'num' . $i};
      }
    }

}
类示例
{
公共函数构造(){
对于($i=0;$i{'num'.$i});
}
}
}
在构造函数中,您可以执行该操作

实现这一目标的另一种方法是:

class Example           
{
  public $num = array();
   public function fun(){
      for( $i=0; $i<5; $i++ )  
      {   
        $this->num[$i] = 'value';
      }
    }

}
类示例
{
public$num=array();
公共活动{
对于($i=0;$inum[$i]='value';
}
}
}

将变量作为数组。

您可以使用构造函数来实现这一点:

class Example           
{
   public function __Construct(){
      for( $i=0; $i<5; $i++ )  
      {   
       public $this->{'num' . $i};
      }
    }

}
类示例
{
公共函数构造(){
对于($i=0;$i{'num'.$i});
}
}
}
在构造函数中,您可以执行该操作

实现这一目标的另一种方法是:

class Example           
{
  public $num = array();
   public function fun(){
      for( $i=0; $i<5; $i++ )  
      {   
        $this->num[$i] = 'value';
      }
    }

}
类示例
{
public$num=array();
公共活动{
对于($i=0;$inum[$i]='value';
}
}
}

将变量作为数组。

规则#1不给变量编号;如果你有编号的变量,那么你可能应该使用数组而不是规则#2的可能副本。你的理解是完全错误的……类由函数/方法和属性组成……如果你想生成,你不能在函数/属性之外有代码首先定义属性,然后在构造函数方法代码中定义;但是您可以通过为它们赋值来定义它们,并且它们不能是除publicClass以外的任何对象,例如{public$num($i=0;$i您是否考虑过使用数组作为类成员?规则#1不为变量编号;如果您有编号的变量,那么您可能应该使用数组而不是规则#2的可能副本您的理解完全错误…类由函数/方法和属性组成…您不能在func之外使用代码选项/property…如果要动态定义属性,请在构造函数方法代码中定义;但是您可以通过为它们赋值来定义它们,并且它们不能是除publicClass以外的任何对象例如{public$num;for($i=0;$i)您考虑过将数组作为类成员吗?