jQuery ajax 호출 측면에서 php 에코와 반환 간의 차이
jQuery Ajax 호출의 성공 함수가 제대로 작동하지 않는 문제가 있었는데, echo $result를 사용해야 할 때 PHP 함수가 return $result를 사용하고 있었기 때문이라는 지적을 받았습니다.
Ajax가 호출한 PHP 함수를 "return $result"에서 "echo $result"로 변경하여 문제를 해결했지만, 왜 그럴까요?PHP 스크립트 측면에서 둘 사이의 차이(반환 및 에코)에 대한 설명은 많지만, Ajax 호출에 해당 값을 보낼 때 어떻게 다릅니까?
Ajax 호출은 서버의 응답을 읽고, 그 응답은 다음과 같은 읽기 쉬운 데이터 유형으로 렌더링되어야 합니다.application/json
또는text/html
.
해당 데이터를 작성하려면 다음과 같이 해야 합니다.echo
PHP를 사용하는 서버에서.
반환문은 데이터를 쓰지 않고 서버 수준에서 반환합니다.
Ajax 호출은 HTTP 요청의 응답을 사용합니다.PHP 스크립트는 재시도를 통해 출력을 생성하는 것이 아니라 에코를 통해 출력을 생성합니다.
Ajax 호출은 우리와 같은 방식으로 데이터를 보고 문자열로 읽습니다.기본적으로 다른 웹 페이지에 액세스하여 결과를 "수신"하는 것입니다.PHP의 'return'은 서버에서만 값을 반환하는 것입니다.실제로 데이터를 출력해야 Ajax 호출이 이루어질 때 보고 있는 페이지에 실제로 데이터가 기록됩니다.
그echo
명령은 데이터를 표준 출력으로 출력합니다. 이 출력은 웹 브라우저 응용 프로그램에서 데이터를 요청한 클라이언트입니다.CLI에서 콘솔에 데이터를 인쇄합니다. 그리고return
명령은 값을 사용하여 함수를 종료하지만 아무것도 인쇄하지 않습니다.
만약 당신이 PHP 함수들 사이에서 의사소통을 하고 싶다면, 당신은 사용해야 합니다.return
하지만 일부 데이터를 출력하려면 다음을 사용해야 합니다.echo
.
언급URL : https://stackoverflow.com/questions/10107144/difference-between-php-echo-and-return-in-terms-of-a-jquery-ajax-call
'source' 카테고리의 다른 글
마우스 이벤트 없이 jQuery에서 마우스 위치를 얻는 방법은 무엇입니까? (0) | 2023.09.04 |
---|---|
asp.net 에서 DateTime의 Javascript 직렬화는 Javascript 날짜 객체를 제공하지 않습니까? (0) | 2023.09.04 |
MYSQL: 테이블 만들기의 인덱스 키워드 및 사용 시기 (0) | 2023.09.04 |
'--rm' 플래그는 무엇을 하고 있습니까? (0) | 2023.09.04 |
기본 설정 요약에서 Android 기본 설정의 현재 값을 표시하는 방법은 무엇입니까? (0) | 2023.09.04 |