일부 PHP 애플리케이션에서는 isset()이 strlen()을 대체하고 isset이 strlen보다 빠르게 실행된다는 비교를 자주 볼 수 있다고 생각합니다.
예:
if ( isset($username[5]) ) {
이유는 isset이 언어 구조이고 strlen이기 때문입니다. 기능이다. 그렇다면 언어 구조는 무엇입니까? 함수랑 다른건가요?
1. 언어 구조와 기능이란 무엇입니까
언어 구조: PHP 언어의 키워드이자 언어 문법의 일부입니다. 사용자가 정의하거나 언어 확장 또는 라이브러리에 추가할 수 없으며 변수 및 반환 값이 있을 수도 있고 없을 수도 있습니다.
기능: 코드블록으로 구성되어 재사용이 가능합니다.
2. 언어 구조가 함수보다 빠른 이유는 무엇입니까?
이유는 PHP에서는 먼저 PHP 파서에 의해 함수가 언어 구조로 분해되어야 하기 때문입니다. 함수에는 언어 구조보다 파서 구문 분석 계층이 하나 더 있다는 것을 알 수 있습니다. 이런 방식으로 우리는 어떤 언어 구조가 함수보다 빠른지
더 잘 이해할 수 있습니다.
3. 언어 구조와 기능의 차이
해당 기능보다 언어 구조가 빠릅니다.
언어 구조는 잘못된 언어 키워드이기 때문에 재처리 단계가 없습니다
구성 항목(php.ini)에서는 언어 구조를 비활성화할 수 없지만 기능은 비활성화할 수 있습니다.
언어 구조를 콜백 함수로 사용할 수 없습니다.
4. 언어 구조 목록
echo()
Print (), 그렇습니다, 이것은 언어 구조입니다DIE ()
isset (): 변수에만 사용됩니다
unset ()
~ --''s' 비어 있음( ): 변수
에만 사용됩니다. 다음 경우 isset()은 TRUE를 반환합니다.$var = " ";
$var = array();
지금까지는 null만 할당되었습니다. 또는 값이 할당되지 않으면 통과하지 못합니다.