>백엔드 개발 >PHP 문제 >PHP가 객체를 배열로 변환할 수 있나요?

PHP가 객체를 배열로 변환할 수 있나요?

藏色散人
藏色散人원래의
2021-10-15 10:17:291906검색

php는 객체를 배열로 변환할 수 있습니다. 1. json_encode를 사용하여 객체 배열을 문자열로 변환합니다. 2. json_decode()를 사용하여 문자열을 배열로 변환합니다.

PHP가 객체를 배열로 변환할 수 있나요?

이 기사의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

PHP가 개체를 배열로 변환할 수 있나요?

php 객체를 배열로 변환

지침

개발 과정에서 인스턴스화된 객체를 배열로 변환해야 하는 상황에 직면하게 됩니다

예를 들어, 처리된 데이터를 엑셀로 내보내고 싶지만 엑셀은 내보내기만

배열 형식 형식을 지원합니다

예를 들어 다음 코드에서는 값 데이터를 배열 형식으로 반환해야 합니다.

배열로 직렬화되어 있지만 이때 반환되는 내용은 다음과 같습니다. 객체 배열

 $data=$orderList->getCollection()->map(function ($order){
            return new OrderResponse($order);
        });
    dd($data->toArray());

반환은 다음과 같습니다

^ array:8 [
  0 => app\admin\Responses\OrderResponse {#122
    +"statistical_date": "2021-09-10"
    +"order_num": 1
    +"play_type_count": 1
    +"invalid_order_count": 1
  }
  1 => app\admin\Responses\OrderResponse {#119
    +"statistical_date": "2021-09-09"
    +"order_num": 6
    +"play_type_count": 6
    +"invalid_order_count": 3
  }
]

처리 방법

json_decode()를 사용하여 문자열을 배열로 변환합니다

먼저 json_encode를 사용하여 객체 배열을 문자열로 변환한 다음 배열로 변환합니다

$data=json_decode(json_encode($data),true);
返回如下
CopyCopy
array:8 [
  0 => array:4 [
    "statistical_date" => "2021-09-10"
    "order_num" => 1
    "play_type_count" => 1
    "invalid_order_count" => 1
  ]
  1 => array:4 [
    "statistical_date" => "2021-09-09"
    "order_num" => 6
    "play_type_count" => 6
    "invalid_order_count" => 3
  ]
]

추천 학습: "PHP 비디오 튜토리얼"

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.