> 백엔드 개발 > PHP 튜토리얼 > PHP에서 객체를 배열로 변환

PHP에서 객체를 배열로 변환

WBOY
풀어 주다: 2023-09-09 17:56:01
앞으로
1067명이 탐색했습니다.

PHP에서 객체를 배열로 변환

PHP 애플리케이션에서 우리는 문자열, 배열, 객체 등과 같은 다양한 형식의 데이터를 다루고 있습니다. 실시간 애플리케이션에서는 원하는 출력을 얻기 위해 연관 형식으로 PHP 객체 결과 배열을 읽어야 할 수도 있습니다.

그래서 여기서는 PHP 객체를 PHP에서 연관 배열로 변환하는 방법에 대해 설명하겠습니다.

PHP에서 객체와 연관배열이 무엇인지 설명해 보겠습니다. 객체는 클래스의 인스턴스입니다. 즉, 클래스에서 많은 객체를 만들 수 있습니다. 이는 메모리가 할당된 클래스의 샘플일 뿐입니다. 반면, 문자열을 인덱스로 구성한 배열을 연관배열(associative array)이라고 합니다. 여기에는 값이 해당 키와 연결되는 키-값 쌍이 포함되어 있습니다.

이제 객체를 배열로 변환하는 다양한 방법에 대해 논의해 보겠습니다.

방법 1:

json_decode 및 json_encode 기술 사용:

처음에 json_encode() 함수는 주어진 값의 JSON 인코딩 문자열을 반환합니다. json_decode() 함수는 이를 PHP 배열로 변환합니다.

예:

<?php
   class student {
      public function __construct($firstname, $lastname) {
         $this->firstname = $firstname;
         $this->lastname = $lastname;
      }
   }
   $myObj = new student("Alex", "Stokes");
   echo "Before conversion:".&#39;</br>&#39;;
   var_dump($myObj);
   $myArray = json_decode(json_encode($myObj), true);
   echo "After conversion:".&#39;</br>&#39;;
   var_dump($myArray);
?>
로그인 후 복사

출력:

Before conversion:
object(student)#1 (2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
After conversion:
array(2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
로그인 후 복사

설명:

여기서 Student 클래스를 만들고 객체가 생성될 때 실행되는 클래스에 __construct() 함수를 선언했습니다. 생성자는 나중에 new 키워드를 사용하여 객체를 생성할 때 제공되는 매개변수를 받습니다. 첫 번째 var_dump() 표현식에서는 객체를 인쇄하지만 두 번째 경우에는 json_decode 및 json_encode 기술을 사용하여 객체를 배열로 변환합니다.

방법 2:

< h2>유형 변환 기술을 사용하여 객체를 배열로 변환:

유형 변환은 하나의 데이터 유형 변수를 다른 데이터 유형으로 활용하는 방법으로, 데이터 유형을 정확하게 변환하는 것입니다.

<?php
   class bag {
      public function __construct( $item1, $item2, $item3){
         $this->item1 = $item1;
         $this->item2 =$item2;
         $this->item3 = $item3;
      }
   }
   $myBag = new bag("Books", "Ball", "Pens");
   echo "Before conversion :".&#39;</br>&#39;;
   var_dump($myBag);
   $myBagArray = (array)$myBag;
   echo "After conversion :".&#39;</br>&#39;;
   var_dump($myBagArray);
?>
로그인 후 복사

출력:

Before conversion :
object(bag)#1 (3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
After conversion:
array(3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
로그인 후 복사

설명:

여기서 "bag"이라는 클래스를 만들었고 이 클래스 안에 객체가 생성될 때 실행되는 __construct() 함수를 선언했습니다. 생성자는 new 키워드를 사용하여 객체를 생성할 때 제공되는 매개변수를 받습니다. 첫 번째 var_dump() 표현식에서는 객체를 인쇄하지만 두 번째 경우에는 유형 힌트 프로시저를 사용하여 객체를 배열로 캐스팅합니다.

위 내용은 PHP에서 객체를 배열로 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿