PHP에서 떠오르는 몇 가지 질문

WBOY
풀어 주다: 2016-07-29 08:37:28
원래의
1164명이 탐색했습니다.

코드 복사 코드는 다음과 같습니다.


/* PHP 코드 */
header( "Content- type: text/javascript");
if (!haveCookie('cookieName')) {
// ... 뭔가를 하세요
?> < ;?php
}
?>


얼핏 보면 코드가 완벽해 보이지만 사랑하는 Xiao Ma가 여전히 문제를 발견했습니다. 즉, Javascript에서의 판단은 항상 참입니다



코드를 복사하세요


코드는 다음과 같습니다.

if ('ununde ' == typeof document.cookie['cookieName']) { // ... }

이 코드는 PHP 측에 if ( !haveCookie('cookieName')), 클라이언트에 표시됩니다. 그러면 이 조건이 충족되지 않으면 이 코드는 당연히 클라이언트에 전달되지 않습니다. 이렇게 말하는 것은 다소 일반적인 것 같으니 먼저 Javascript 코드는 제쳐두고 간단히 PHP 코드를 사용하여 설명하겠습니다



코드 복사


코드

header("Content-type: text/javascript") if (!haveCookie('cookieName')) { if (!haveCookie('cookieName')) { setCookie('cookieName');

}

}
?>


이렇게 하면 훨씬 더 명확해집니다. 그러면 문제를 찾기가 쉬울 것입니다. 클라이언트 측에서 Javascript에 의해 실행되었지만 실수로 한 번 더 판단을 내렸습니다.
요약하자면 이 코드에서 생각해낸 말도 안되는 생각은 다음과 같습니다.
코드가 길수록 효율성이 높지 않을 수 있습니다.
여러 판단을 코드에 영향을 주지 않고 최대한 함께 작성하세요.
판단보다 복잡도가 낮은 기능을 먼저 고려하세요
과도한 판단은 프로그램 효율성을 저하시키기 쉽습니다

. 너무 중첩됨 너무 많으면 프로세스와 알고리즘을 다시 생각해야 함
과도한 판단으로 견고한 코드가 보장되지 않음
코드를 단순화하면 발견되지 않은 문제가 많이 발견됨
다른 각도에서 과도한 판단 이해 코드에 대한 자신감 부족
마지막으로 샤오마 동지님께 다시 한 번 감사드립니다.

위 내용은 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿