는 다음과 같은 고려 ===========================
// javascript/jQuery
$.ajax({
type: 'POST',
url: 'daytime_check.php',
success: function(response) {
if(response == false) {
alert('Goodnight, brother');
} else {
alert('Day\'s a wastin, brother');
}
},
error: function() {
//handle error
}
});
이것은 내가 지금까지 AJAX의 PHP 스크립트에서 응답을 처리 한 방법입니다. 나는 현재의 방법이 꽤 clunky하다고 느끼기 때문에 누군가가 나에게 더 나은 방법으로 힌트를 줄 수 있기를 바라고있다.
특히 clunky는 JS 측에서 PHP 스크립트 출력의 "필터링"을 처리합니다. 예 :
이 경우 PHP의 응답은 JS var response ='0'
이됩니다. 이제는 !response
이 false
으로 평가되고, 흥미롭게도 은 true
으로 평가되기 때문에 JS에서는 필터로 if (!response)...
을 단순히 사용할 수 없습니다. 저글링 유형과 관련이 있습니다.
PHP에서 물건을 반환 할 수있는 유일한 방법은 텍스트 (echo
문)이기 때문에 JS 측에 도착하면 적절한 진실/거짓 값을 필터링하여 필터링 할 수 없습니다. 이 문제를 해결할 더 좋은 방법이 있습니까?
적어도 조금 이해가 되었기를 바랍니다.
나는 이것을 좋아합니다. PHP에서 값을 반환 할 때'die()'를 사용하는 방법도 흥미 롭습니다. 그것은 단지 메모리 문제에 대한 스크립트를 죽일 수 있습니까? – eysikal
그럼'echo' 나'print'를 사용할 수 있습니다. 이 방법을 사용하면 JSON 만 출력하고 스크립트가 종료 된 후에야 'die'를 선호합니다. – dfsq
나는 그 생각을 좋아한다. 나는 그 일을 전에 보지 못했다.좋은 생각이들 것 같습니다. – eysikal