2009-06-06 5 views
4

나는 ASP.NET에서 머리글 바닥 글과 웹 페이지의 다른 일반적인 부분을 관리하기 위해 UserControls를 사용하는 많은 웹 응용 프로그램을 개발했습니다. 이제 PHP로 앱을 개발하고 있는데, UserControls의 대안으로 사용할 수있는 것이 무엇입니까 ??PHP의 ASP.NET UserControls 대신 사용할 수 있습니까?

PHP에서 비슷한 개념을 어떻게 구현할 수 있습니까?

고마워요?

답변

2

여기서 자세히 설명하기가 조금 더 어려운 두 번째 대답은 자신의 'UserControl'클래스를 작성하는 것입니다. 클래스에는 필요한 속성이 필요하며 컨트롤을 화면에 출력하는 RenderHTML() 메서드가 있어야합니다.

+0

hmmmmmm ... 멋지다. 우리는 이것을 적용 할 수있다. 그러나 모든 컨트롤을 위해 우리는 별도의 Ucontrol 클래스를 만들어야 만한다 ?? – Prashant

+0

모든 컨트롤 클래스가 동일한 방식으로 작동하도록 인터페이스를 사용합니다. 하지만 네가하고자하는 모든 사용자 컨트롤에 대해 별도의 클래스를 만들어야 할 필요가있다. 그러나 이것은 Asp.net에서 동일합니다. 하나의 ucontrol이 다른 클래스에서 상속받을 수있는 모든 상속 규칙이 적용됩니다. –

+0

예, 모든 다른 컨트롤에 대해 asp.net에서도 UserControl을 만들고 PHP 클래스 메서드에 적용 할 수 있습니다. :) – Prashant

1

UserControl 개념은 PHP에 명시 적으로 존재하지 않지만 원하는 기능을 파일에 캡슐화하고 include() 함수를 사용하여 원하는 페이지에 배치 할 수 있습니다. Smarty 처리 및 렌더링의 더 나은 분리를 제공하고, 일이 이런 종류의 슈퍼 부드러운 만들 것

<html> 
<head> 
    <title></title> 
</head> 
<body> 
    <?php include('header.php'); ?> 
    <?php include('pageBody.php'); ?> 
    <?php include('footer.php'); ?> 
</body> 
</html> 

참고.

+0

저는 include를 잘 알고 있지만 include를 사용하면 UserControls에서 쉽게 할 수있는 Property로 변수를 전달할 수 없습니다. 좀 더 명확히하기 위해, ma usercontrol에 변수를 전달하고 싶다고 가정 해 봅시다. 여기에서 내 웹 사이트 탐색은 헤더의 현재 메뉴를 선택하거나 선택 해제합니다. 그러나 이것을 사용하여 어떻게 수행 할 수 있습니까? – Prashant

+0

Smarty를 확인하십시오. 이런 종류의 일은 템플릿 엔진을 사용하여 가능합니다. 그것은 당신을위한 패러다임 변화의 비트 것입니다. –

관련 문제