이 글에서는 PHP 직렬화 함수 serialize()와 unserialize()를 PHP 기본 직렬화 함수와 비교하는 내용을 주로 소개합니다.
PHP에는 문자열 형식을 지정하고 이를 배열이나 객체로 변환하는 좋은 방법, 즉 직렬화가 있습니다.
변수를 직렬화하는 방법에는 두 가지가 있습니다.
serialize() 및 unserialize() 함수를 사용하는 다음 예:
// a complex array $myvar = array( 'hello', 42, array(1,'two'), 'apple' ); // convert to a string $string = serialize($myvar); echo $string; /* prints a:4:{i:0;s:5:"hello";i:1;i:42;i:2;a:2:{i:0;i:1;i:1;s:3:"two";}i:3;s:5:"apple";} */ // you can reproduce the original variable $newvar = unserialize($string); print_r($newvar); /* prints Array ( [0] => hello [1] => 42 [2] => Array ( [0] => 1 [1] => two ) [3] => apple ) */
이것은 기본 PHP 직렬화 방법입니다.
그러나 최근 몇 년간 JSON의 인기로 인해 PHP5.2에는 JSON 형식에 대한 지원이 추가되었습니다.
이제 json_encode() 및 json_decode() 함수를 사용할 수 있습니다.
// a complex array $myvar = array( 'hello', 42, array(1,'two'), 'apple' ); // convert to a string $string = json_encode($myvar); echo $string; /* prints ["hello",42,[1,"two"],"apple"] */ // you can reproduce the original variable $newvar = json_decode($string); print_r($newvar); /* prints Array ( [0] => hello [1] => 42 [2] => Array ( [0] => 1 [1] => two ) [3] => apple ) */
이는 더욱 효율적이며 특히 JavaScript와 같은 다른 많은 언어와 호환됩니다.
참고: 복잡한 개체의 경우 일부 정보가 손실될 수 있습니다.
요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.
관련 권장 사항:
PHP는 기본 데이터베이스 연결, SQL 문 실행 및 오류 프롬프트를 구현합니다.
위 내용은 PHP 직렬화 함수와 기본 직렬화 함수 비교의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!