2009-04-26 3 views
1

큰 변화가 있었지만 약간 썼지 만 (끔찍한 것은 아니지만) PHP 웹 사이트에서 함수를 저장하는 클래스를 사용하여 함수를 변경하는 표준 페이지 헤더를 쓰는 것과 같은 일을합니다 헤더의 텍스트와 같습니다. 포함 된 파일이 아닌 에코 HTML 및 일반 PHP 모두가PHP는 함수를 포함합니다.

<div class="left"><?php include("left.php"); ?></div> 

: 이전 버전은 같은 각 파일의 복사 및 붙여 넣기 HTML 헤더를 사용했다. 이것들은 계속 사용하는 것처럼 보이지만, 필자는 필자가 알고있는 것처럼 include 파일을 직접 바꿀 뿐이다.

그것은 더 나은 다음과 같습니다
이 - 재 쓰기
나의 새로운 기능에 이러한 파일의 내용을 이동 -Simply 모든 표준 HTML을 반향 포함 된 파일을 적절한 (내 지식, 그들이 사용하지 않는 경우 어디서나 새로운 기능을 수행 할 곳을 제외하고)
- 다른 항목

감사합니다.

답변

4

읽기 http://php.net/include :

(가)가 그 함수에서 정의 된 것처럼 다음, 호출하는 파일 내에서 함수 내에서 작동합니다 호출 된 파일에 포함 된 모든 코드를 발생 포함합니다. 그래서, 그것은 그 함수의 가변 범위를 따를 것입니다. 이 규칙의 예외는 포함이 발생하기 전에 파서가 평가하는 마법 상수입니다.

파일이 포함되면 구문 분석은 대상 파일의 시작 부분에서 PHP 모드와 HTML 모드로 빠져 나가고 끝에 다시 다시 시작합니다. 이러한 이유로 PHP 코드로 실행되어야하는 대상 파일 안의 모든 코드는 유효한 PHP 시작 및 종료 태그 내에 포함되어야합니다.

PHP는 C/C++처럼 include 문을 대체하기 위해 포함 된 파일의 코드를 복사하여 붙여 넣기 만하지 않습니다. 따라서 포함 된 파일의 <?php 및태그가 포함 된 파일을 엉망으로 만들지 않으므로 걱정할 필요가 없습니다.

0

PHP를 작성하여 모든 HTML을 에코하면 실제로 변수 같은 것을 구문 분석하지 않으면 약간 비효율적입니다. 즉, 나는 그것을 스스로하는 습관을 흔들어 놓을 수는 없다. :)

잘 설계된 페이지는 필요한 경우에만 PHP를 사용하며 현재 사용하는 방법이 현재 사이트에 가장 적합한 방법이라고 생각합니다.

대다수의 사이트가 갑자기 동적으로 생성되는 경우이 질문에 다시 방문 할 가치가 있습니다.