2011-03-22 15 views
1

전문가들이 PHP 코드 작성에 대한 제안을 해주길 바랍니다. 보통 내가하는 일은 코드를 여러 파일로 분리 한 다음 include();을 모두 마스터 파일로 분리하는 것입니다. 이 코드를 쉽게 디버깅 할 수 있지만 프로그램이 느려집니다. 그래서, 프로그래밍의 주인님, 저에게 뭔가 제안 해주십시오.PHP에서 가장 좋은 방법은 무엇입니까?

+4

매뉴얼을 포함하지 않고 오토로더를 사용하면 확실하게 쉽게 작업 할 수 있습니다. –

+0

@mark - 더 나은 이해를 위해 예제 코드 스 니펫을 제공해 주시겠습니까? –

+0

일부 코드를 게시 할 수 있습니까? 그러면 조언을 해주는 것이 더 쉬울 것입니다. –

답변

1

꽤 큰 질문이며 나는 사람들이 다른 것을 선호한다고 확신합니다. 일반적으로 요청이있을 때 페이지가 포함되는 인덱스 페이지가 있습니다 (대부분 파일 포함 공격 방지를 위해 스위치 사용).

포함 된 페이지에는 개별적으로 실행할 수 없는지 확인하기 위해 검사 된 정의 된 상수가 있습니다.

필자는 항상 템플릿 시스템 (실제로는 매우 빠른 PHP 시스템)을 사용하고 MVC 유형 (모델보기 컨트롤러)을 사용하여 코드를 구성하는 편을 선호합니다. user.php, user.class.php 및 사용자 템플릿을 생성합니다 (예 : 사용자는 컨트롤러, 클래스는 모델, 뷰 템플릿).

EDIT - 이전 프로젝트의 색인 페이지 예 (점을 찍기 위해 줄 였음) 이 글에서는 Smarty, btw를 사용했습니다. 오토로더의 의견으로

<?php 
define('game',1); 

session_start(); 

require_once 'libs/smartySetup.php'; 
require_once 'libs/containers/utils.class.php'; 
require_once 'login.php'; 

$page = isset($_REQUEST['page']) ? $_REQUEST['page'] : 'home'; 
$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : ''; 

switch($page) 
{ 
    case 'home':  break; // unlogged 
    case 'register': break; // unlogged 
    case 'town':  break; 
    default: 
     $page = 'home'; 
} 

include("$page.php"); 


?> 
+0

선생님, 저는 여전히 프로그래밍의 학습자이므로 답변을 편집하고 저의 도움을 위해 일러스트레이션과 코딩 스 니펫을 제공해주십시오. 당신이 마음을 가지기를 바랍니다. –

+0

예전의 프로젝트에서 예제 색인 페이지를 붙여 넣습니다. – Spyros

+0

좋습니다. 붙여 넣으십시오. –

관련 문제