PHP 프로그래밍에서 배열과 객체는 가장 일반적으로 사용되는 데이터 유형 중 하나입니다. 개체가 포함된 배열을 원본 데이터만 포함된 배열로 변환해야 하는 경우가 있습니다. 이 경우 배열에서 개체를 제거해야 합니다. 이 기사에서는 PHP 배열에서 객체를 제거하는 방법을 소개합니다.
array_map
함수는 배열의 각 요소에 함수를 적용하고 새 배열을 반환하는 PHP의 함수입니다. 객체가 포함된 배열의 경우 array_map
함수를 사용하여 각 객체를 원래 데이터 유형으로 변환하는 함수를 적용할 수 있습니다. 예: array_map
函数是PHP中的一个函数,它可以对数组中的每个元素应用一个函数,然后返回一个新的数组。对于含有对象的数组,我们可以使用array_map
函数应用一个函数来将每个对象转换为原始的数据类型。例如:
function object_to_array($obj) { return (array) $obj; } $arr = array( (object)array("name"=>"Tom","age"=>18), (object)array("name"=>"Jerry","age"=>20), ); $new_arr = array_map("object_to_array",$arr); print_r($new_arr);
上述代码中,我们定义了一个object_to_array
函数,它会将一个对象转换为数组。然后,我们使用array_map
函数对原始的数组$arr
应用这个函数,返回一个新的数组并存储在$new_arr
变量中。最后,我们使用print_r
函数输出转换后的数组。
PHP中的json_decode
函数可以将JSON格式的数据转换为PHP数组或对象。而json_encode
函数可以将PHP数组或对象转换为JSON格式的数据。因此,我们可以先使用json_encode
函数将含有对象的数组转换为JSON格式的数据,再使用json_decode
函数将其转换为只包含原始数据类型的数组。例如:
$arr = array( (object)array("name"=>"Tom","age"=>18), (object)array("name"=>"Jerry","age"=>20), ); $json = json_encode($arr); $new_arr = json_decode($json,true); print_r($new_arr);
上述代码中,我们先使用json_encode
函数将数组$arr
转换为JSON格式的数据并存储在$json
变量中,然后使用json_decode
函数将其转换为数组,并存储在$new_arr
变量中。最后,我们使用print_r
函数输出转换后的数组。
PHP中的ArrayIterator
类可以将数组转换为迭代器,然后我们就可以使用方法getArrayCopy
将其转换为只含原始数据类型的数组。例如:
$arr = array( (object)array("name"=>"Tom","age"=>18), (object)array("name"=>"Jerry","age"=>20), ); $iterator = new ArrayIterator($arr); $new_arr = $iterator->getArrayCopy(); print_r($new_arr);
上述代码中,我们创建了一个ArrayIterator
类的实例$iterator
,并将数组$arr
传递给它。然后我们使用getArrayCopy
方法将其转换为原始数据类型的数组,并将其存储在$new_arr
变量中。最后,我们使用print_r
rrreee
object_to_array
함수를 정의합니다. 그런 다음 array_map
함수를 사용하여 이 함수를 원래 배열 $arr
에 적용하고 새 배열을 반환하여 $new_arr
변수에 저장합니다. . 마지막으로 print_r
함수를 사용하여 변환된 배열을 출력합니다.
json_decode
함수는 JSON 형식 데이터를 PHP 배열 또는 객체로 변환할 수 있습니다. json_encode
함수는 PHP 배열이나 객체를 JSON 형식 데이터로 변환할 수 있습니다. 따라서 먼저 json_encode
함수를 사용하여 객체가 포함된 배열을 JSON 형식 데이터로 변환한 다음 json_decode
함수를 사용하여 기본 데이터만 포함하는 배열로 변환할 수 있습니다. 유형. 예: 🎜rrreee🎜위 코드에서는 먼저 json_encode
함수를 사용하여 $arr
배열을 JSON 형식 데이터로 변환하고 $json에 저장합니다.
변수를 지정한 다음 json_decode
함수를 사용하여 배열로 변환하고 $new_arr
변수에 저장합니다. 마지막으로 print_r
함수를 사용하여 변환된 배열을 출력합니다. 🎜ArrayIterator
클래스는 배열을 반복자로 변환한 다음 getArrayCopy
메소드를 사용할 수 있습니다. 기본 데이터 유형만 포함하는 배열로 변환합니다. 예: 🎜rrreee🎜위 코드에서는 ArrayIterator
클래스의 $iterator
인스턴스를 생성하고 여기에 $arr
배열을 전달합니다. . 그런 다음 getArrayCopy
메서드를 사용하여 이를 기본 데이터 유형의 배열로 변환하고 $new_arr
변수에 저장합니다. 마지막으로 print_r
함수를 사용하여 변환된 배열을 출력합니다. 🎜🎜요약하자면 위의 세 가지 방법을 사용하여 PHP 배열에서 객체를 제거할 수 있습니다. 특정 응용 분야에서는 실제 필요에 따라 적절한 방법을 선택할 수 있습니다. 🎜위 내용은 PHP 배열 제거 객체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!