2012-11-13 5 views
6

PHP를 HTML과 함께 코딩 할 때, 항상 혼란스럽고 매우 고통스러운 것처럼 보입니다. 구조는 이해하기 쉽지 않습니다.HTML과 함께 아름다운 PHP를 코딩하는 방법은 무엇입니까?

누구든지 PHP를 HTML로 코딩하는 방법을 잘 설명 할 수 있습니까? php code

+7

고정 너비 및 고정 너비의 너비 글꼴이 이상하게 혼합되어 있습니다! – zerkms

+0

많은 사람들이 바로 이런 이유로 템플릿 엔진을 사용합니다. 필자는 PHP로 페이지를 작성하는 경향이 있지만 일반적으로 정적 컨텐츠 기반 사이트에서 작업하지는 않습니다. – Brad

+1

HTML과 PHP 모두에서 빨간색과 파란색을 사용하고 있습니다. 실제로 혼란 스럽습니다. 나는 완전히 다른 세트의 색상을 사용하며, 길을 잃는 것은 거의 불가능합니다. –

답변

6

MVC (Model-View-Controller)와 같이이 문제에 도움이되는 방법론이 있습니다. MVC는 프리젠 테이션 (UI) 레이어에서 로직의 데이터 레이어를 분리합니다. 이 경우 CodeIgniter와 같은 프레임 워크가 도움이 될 것입니다. 기존 프레임 워크를 사용하지 않아도 비즈니스 로직에서 데이터 모델을 분리 한 다음 UI 오브젝트에서 데이터 모델을 분리하는 것은 상대적으로 쉽습니다.

편집 : 장바구니 페이지가 있다고 가정 해 보겠습니다. 당신은 cart.php라는 "보기"파일을 가질 수 한 다음, 다른 PHP 파일 ("컨트롤러")에서 정보를 보내 수 있도록하는 대신이의 :

<div id = 'special_price'> 
<?php $result = mysql_query("SELECT price FROM pricelists"); 
$row = mysql_fetch_assoc($result); 
echo $row["price"]; 
?> 
</div> 
이 작업을 수행 할 수 있습니다

:

<div id = 'special_price'><?= $price ?></div> 

이 시나리오에서는 페이지를 표시하기 전에 모든 논리 및 데이터 액세스가 처리됩니다.

+2

+1 쓰레기통 접근을 완전히 피하는 것을 제안하는 Hurray! –

+1

대단히 감사합니다. 당신의 대답은 전문적이다. – linjuming

1

@ ajacian81이 맞지만 추가 옵션이 있습니다. 그가 언급 한 방법은 MVC 프레임 워크에 따라 모든 코드를 작성하는 것입니다. MVC 아키텍처는 복잡한 웹 애플리케이션의 관심사를 분리하는 훌륭한 방법입니다. MVC는 응용 프로그램 논리, 데이터베이스 논리 및 뷰를 3 개의 별도 위치로 분리합니다. 그러나 인터 믹스 된 PHP + html 코드베이스를 MVC 프레임 워크로 리팩토링하는 것은 시간 소모적 일 수 있습니다. 코드베이스를 완전히 리 팩토링하지 않고 HTML에서 PHP를 제거하는 데 관심이 있다면 Twig 또는 Smarty과 같은 템플릿 엔진을 사용해보십시오.

템플릿 엔진을 사용하면 php와 sql을 한 위치로, HTML 템플릿을 다른 위치로 분리 할 수 ​​있습니다. MVC 프레임 워크를 사용하는 경우 php, sql 및 html을 3 개의 다른 위치로 분리해야합니다. 우선 순위가 단기간이라면 템플릿 엔진 만 사용하십시오. 우선 순위가 장기적이라면 코드를 MVC 프레임 워크로 리팩토링하는 것을 고려하십시오.

-2

PHP는 매우 발전하여 사용자 정의 빌드에 프레임 워크 신념을 사용하지 않습니다. 스크립트 및 모든 html 및 php 섹션의 시작과 끝을 주석 처리하면 전체 소셜 웹 사이트 또는 소셜 비즈니스 포털을 실행하는 데 필요한 파일의 속도 및 파일 수를 놀라게 할 수 있습니다. config.php, 모든 세션과 쿠키를 저장하는 ini.php, db_connect.php의 세 가지 주요 파일 만 사용합니다. 모든 페이지 뷰는 페이지 새로 고치기없이 Ajax에 의해 처리되고 모든 양식은 페이지 새로 고침없이 Ajax를 사용하여 이러한 뷰 중 일부로 가져와집니다. 부피가 큰 프레임 워크의 필요성을 없애기 위해 모든 URL 요청에 Ajax를 거의 사용했습니다.

관련 문제