Development Tip

PHP 객체 배열

yourdevel 2021. 1. 10. 19:40
반응형

PHP 객체 배열


그래서 한동안 찾고 있었는데 간단한 질문에 대한 답을 찾을 수 없습니다. PHP에서 객체 배열을 가질 수 있습니까? 예 :

$ar=array();    
$ar[]=$Obj1    
$ar[]=$obj2

어떤 이유로 어디서도 답을 찾을 수 없었습니다. 나는 그것이 가능하다고 생각하지만 확인해야합니다.


이와 같은 일반적인 (그리고 다소 쉬운 질문)에 대한 답을 찾을 수있는 가장 좋은 곳은 PHP 문서 를 읽는 것입니다 . 특히 귀하의 경우에는 객체에 대해 더 많이 읽을 수 있습니다 . stdObject 및 인스턴스화 된 객체를 배열 내에 저장할 수 있습니다. 실제로 개체의 멤버 변수를 데이터베이스 행의 값으로 채우는 ' 수화 ' 라는 프로세스가 있습니다 . 그런 다음 개체는 배열 (다른 개체와 함께)에 저장되고 액세스를 위해 호출 코드로 반환됩니다.

-- 편집하다 --

class Car
{
    public $color;
    public $type;
}

$myCar = new Car();
$myCar->color = 'red';
$myCar->type = 'sedan';

$yourCar = new Car();
$yourCar->color = 'blue';
$yourCar->type = 'suv';

$cars = array($myCar, $yourCar);

foreach ($cars as $car) {
    echo 'This car is a ' . $car->color . ' ' . $car->type . "\n";
}

예.

$array[] = new stdClass;
$array[] = new stdClass;

print_r($array);

결과 :

Array
(
    [0] => stdClass Object
        (
        )

    [1] => stdClass Object
        (
        )

)

배열은 포인터를 보유 할 수 있으므로 객체 배열을 원할 때 그렇게합니다.

$a = array();
$o = new Whatever_Class();
$a[] = &$o;
print_r($a);

이것은 객체가 참조되고 배열을 통해 액세스 가능하다는 것을 보여줍니다.


예, PHP에서 객체 배열을 가질 수 있습니다.

class MyObject {
  private $property;

  public function  __construct($property) {
    $this->Property = $property;
  }
}
$ListOfObjects[] = new myObject(1); 
$ListOfObjects[] = new myObject(2); 
$ListOfObjects[] = new myObject(3); 
$ListOfObjects[] = new myObject(4); 

print "<pre>";
print_r($ListOfObjects);
print "</pre>";

참조 URL : https://stackoverflow.com/questions/8612190/array-of-php-objects

반응형