의 내용으로 mygetjson.php 새 파일을 만듭니다. <메타 이름="keyw"/> 의 내용으로 mygetjson.php 새 파일을 만듭니다. <메타 이름="keyw">

>백엔드 개발 >PHP 튜토리얼 >PHP와 Ajax의 간단한 구현

PHP와 Ajax의 간단한 구현

巴扎黑
巴扎黑원래의
2016-11-24 11:04:031249검색

1단계. 새 폴더인 js를 만들고 여기에 최신 jquery.js를 넣습니다.

2단계. 콘텐츠가 포함된 새 파일 mygetjson.php를 만듭니다.


class custom_json {

/** 
     * 배열을 자바스크립트 객체/배열로 변환 
     * @param array $array 배열 
     * @return 문자열 
    * /
public static function encode($array)
{

// 유형 결정
if(is_numeric(key($array))) {

/ / 색인화됨(목록)
$output = '[';
for($i = 0, $last = (sizeof($array) - 1); isset($array[$i]); ++ $i ) {
                   if(is_array($array[$i])) $output .= self::encode($array[$i]); $i]);
                                                       

// 연관(객체)
$output = '{';
$last = sizeof($array) - 1
$i = 0
foreach($ array as $key => $value) {
                                                                  $value); 🎜> if($i !== $last) $output .= ','
++$i;
                                                                                 }  

/** 
     * [내부] 형식 값 
     * @param $val 값 혼합 
     * @return 문자열 
    */
개인 정적 함수 _val($val)
{
if(is_string($val) ) return '"'.rawurlencode($val).'"';
elseif(is_int($val)) return sprintf('%d', $val)
elseif(is_float($val)) return sprintf('%F', $val);
elseif (is_bool($val)) return ($val ? 'true' : 'false')
else return 'null' }

}



// 인쇄: ** 직접 시도해 보세요. 여기에 긴 줄을 게시할 수 없습니다 **
$big_test = array(
array(
'이름' => array('John', 'Smith'),
'나이' => 180.53,
'is_human' => 참,
'string' => '안녕하세요',
),
array(
'sex' => null,
'height' => 92.21,
'is_human' => ; false,
'string' => 'んにちは! ​​​​, // 여기서 utf8을 테스트하세요

//echo custom_json::encode($big_test); //json 데이터를 반환하는지 테스트하는 데 사용됩니다
echo $_GET[ 'jsoncallback'].'('.custom_json::encode($big_test).')';//콜백으로 반환
?>



3단계. 새 테스트 페이지 test.html을 만듭니다. 해당 내용은


">


body>

="button" id="btn" value="제출">



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