marg - PHP開發的原生URL路由器

jopen 12年前發布 | 19K 次閱讀 URL PHP開發

這是一個采用PHP開發的原生http請求路由器。具有易于使用和可擴展的特點。使用指南:

<?php

include 'marg/marg.php';

$routes = array( '/' => 'home', '/example_1/([0-9])' => array( 'controller' => 'Example1', 'methods' => array('GET', 'POST'), ), '/example_2' => array('Example2', array('GET', 'POST')), '/example_3' => 'Example3', );

function home() { global $request;

if ($request->verb == 'GET') {
    echo '<h1>Hello World!</h1>';
    if ($request->is_ajax) {
        echo json_encode(array('message' => 'JSON works!'));
    }
} else {
    raise('405');
}

}

function Example1($num) { global $request;

echo '<h1>Example 1.' . $num . '</h1>';
if ($request->verb == 'POST') {
    echo 'A POST request.';
} else {
    echo 'A GET request.';
}

}

function Example2() { global $request;

echo '<h1>Example 2!</h1>';
echo 'Request Type: ' . $request->verb;

}

class Example3 { function setUp() { echo '<center>'; }

function tearDown() {
    echo '</center>';
}

function get() {
    echo '<h1>Example 3!</h1>';
}

function get_ajax() {
    echo '<h1>Example 3 - AJAX Request!</h1>';
}

};

function raise_404() { echo '<h1>Sorry! What you are looking for does not exists. :(</h1>'; }

function raise_405() { echo '<h1>405: Method Not Allowed</h1>'; }

Marg::addSetUp(function () { echo '<html><head><title>Marg Examples</title></head><body>'; }); Marg::addTearDown(function () { echo '</body></html>'; });

Marg::run($routes);

?></pre>

項目主頁:http://lib.open-open.com/view/home/1352592999793

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!