Written by
Ari Kim
on
on
PHP에서 ajax array, object 넘기고 받기
제이쿼리에서 ajax 를 사용하다 문제가 생겨서 블로그를 남깁…읍…..니다.
예시를 보시면 빠른이해가 되실거에요.
1. 배열 넘기기
단순 배열은 그냥 넘기면 됩니다.
> array
var dataArr = new Array();
dataArr[ 0 ] = 'A';
dataArr[ 1 ] = 'B';
dataArr[ 2 ] = 'C';
$.ajax({
type : 'POST',
url : '/test',
cache : false,
data : { dataArr: dataArr },
success : function( data ){
console.log( data );
},
error : function( jqxhr , status , error ){
// console.log( jqxhr , status , error );
}
});
<?php
$dataArr = $_POST['dataArr'];
print_r( $dataArr );
> Array
(
[0] => 'A'
[1] => 'B'
[2] => 'C'
)
echo dataArr[ 0 ];
> A
?>
2. 배열 넘기기 ??
문제는 여기 있습니다 ..
1번에서 $_POST['dataArr']
로 배열을 받고있는데요 ,
아래 배열을 사용하면 넘어오지 않습니다.
원래 간단한 내용일 수 있는데요, js 의 부족한 지식과 PHP 가 만나니 이렇게 되었네요 …
> array
var dataArr = new Array();
dataArr['name'] = 'Ari';
dataArr['email'] = '[email protected]';
dataArr['phone'] = '010-1234-5678';
$.ajax({
type : 'POST',
url : '/test',
cache : false,
data : { dataArr: dataArr },
success : function( data ){
console.log( data );
},
error : function( jqxhr , status , error ){
// console.log( jqxhr , status , error );
}
});
<?php
$dataArr = $_POST['dataArr'];
print_r( $dataArr );
?>
> error ...
<br />
<b>Notice</b>: Undefined index: dataArr in <b>/test.php</b> on line <b>2</b><br />
3. key, value 형태의 배열
달라진 점
- new Object(); 로 선언
- JSON.stringify( dataObject ); // object를 string형태로 변환
- $dataObject->name; 형태로 출력
> array
var dataObject = new Object();
dataObject['name'] = 'ari';
dataObject['email'] = '[email protected]';
dataObject['phone'] = '010-1234-5678';
dataObject = JSON.stringify( dataObject );
$.ajax({
type : 'POST',
url : '/test',
cache : false,
data : { dataObject: dataObject },
success : function( data ){
console.log( data );
},
error : function( jqxhr , status , error ){
// console.log( jqxhr , status , error );
}
});
<?php
$dataObject = json_decode( $_POST['dataObject'] );
print_r( $dataObject );
> stdClass Object
(
[name] => ari
[email] => ari@email.com
[phone] => 010-1234-5678
)
echo $dataObject->name;
> ari
?>
Comments
PHP 의 다른 글
-
php 배열 정렬 13 Jun 2017
-
php 배열 첫번째 원소삭제 / 첫번째 원소추가 13 Jun 2017
-
php 배열에서 원하는 원소(값)만 제거하기 13 Jun 2017
-
PHP에서 ajax array, object 넘기고 받기 01 Jun 2017
-
PHP 확장자 추출 31 May 2017
-
PHP 실행 연산자 (Execution Operators) 31 May 2017
-
php 한글 문자열 자르기 10 Apr 2017
-
단어 가지고 놀기 - substr, str_replace, explode 29 Jun 2016
-
PHP MySQL 연동 27 May 2016
-
배열에서 중복된 값 제거 후에 순차적으로 재정렬 하는 법 27 May 2016