Phapp
1.0.0
간단하지만 확장 가능한 객체 지향 웹 응용 프로그램 프레임 워크.
간단한 예 :
<?php
require_once 'Phapp.php';
class Hello extends PhappView
{
public function response()
{
return 'Hello World.';
}
}
$app = new Phapp();
echo $app->process( 'Hello' );
샘플 지점 에서이 복잡한 예를 찾으십시오.
아이디어는 기본 응용 프로그램 객체에 의해 처리되는 뷰 세트를 정의하는 것입니다.
모든보기 객체는 PhappView의 상속을 덮어 쓸어 져야합니다. 첫 번째는 request ()입니다.
public function request()
{
if( !$_REQUEST['order_number'] )
return 'Home';
return null;
}
이 방법의 목적은 요청을 처리하고 필요한 경우 인수해야 할 다른 견해의 이름을 반환하는 것입니다.
NULL을 반환하는 첫 번째보기는 요청에 응답하기 위해 호출 된 응답 () 메소드를 얻습니다.
public function response()
{
return '<h1>Hello</h1>';
}
다음은 모든 것이 어떻게 함께 작동하는지 보여주는 작은 그래프입니다.
+----------------------------+
| Name of a PhappView object | <-------------------------+
+----------------------------+ |
| |
| |
+-- Phapp ------|-------+ |
| | | |
| V | |
| +------------------------+ +-- PhappView ---------+ |
| | Construct object | ------> | | |
| +------------------------+ | Object derived | |
| | | | from PhappView | |
| V | | | |
| +------------------------+ +-- request() ---------+ |
| | Call request() on | | | |
| | that object | ------> | Determine if | |
| +------------------------+ | this object | |
| | | can handle | |
| +------------------------+ yes? | this request | no? |
| | request() returned | <------ | | -----+
| | null | +-- response() --------+
| | so call response() | ------> | |
| | to get the output | <------ | Generate output for |
| +------------------------+ html | this request |
| | | | |
+---------------|-------+ +----------------------+
|
V
+----------+
| Web page |
+----------+
Phapp은 매우 최소화되고 매우 작습니다. phapp.php를 살펴보면 개념을 완전히 이해하십시오.
서브 클래스 Phapp 및 Phappview는 데이터베이스 액세스, 국제화 및 이와 유사한 것들을위한 방법을 추가합니다.
일반적인 방법이 포함되어있는 기본보기를 설정하고 그로부터 당신의 견해를 도출하는 것이 좋습니다.
PDO를 사용하는 경우 PHAPPPDOVIEW에서 뷰를 상속받을 수 있으며 다음과 같은 Query ()를 호출 할 수 있습니다.
if( ($result = $this->query(
"SELECT
first,
last
FROM members
WHERE last_login = ?
ORDER BY last",
$lastLogin )) )
{
while( ($row = $result->fetch()) )
{
$contents .= "<li>{$row['first']} {$row['last']}</li>";
}
}
빠르고 쉽게 업데이트 할 수 있도록 Phapp을 프로젝트 저장소에 하위 모듈 또는 하위 트리로 추가하는 것이 가장 좋습니다.