3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Request { const METHOD_GET = 'GET'; const METHOD_POST = 'POST'; const METHOD_HEAD = 'HEAD'; const METHOD_PUT = 'PUT'; } $routes = array( '/product-list' => [ Request::METHOD_GET => [ 'alias' => 'catalog_product_list', 'controller' => 'Handel\Catalog\Controller\Product\ProductListController::class', 'method' => 'indexAction', 'requirements' => [], 'options' => [] ] ], '/product/{slug}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_product', 'controller' => 'Handel\Catalog\Controller\Product\ProductController::class', 'method' => 'indexAction' ] ], '/compare' => [ Request::METHOD_GET => [ 'alias' => 'catalog_compare_index', 'controller' => 'Handel\Catalog\Controller\Product\CompareController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_compare_add', 'controller' => 'Handel\Catalog\Controller\Product\CompareController::class', 'method' => 'postAction' ] ], '/category-list' => [ Request::METHOD_GET => [ 'alias' => 'catalog_category_list', 'controller' => 'Handel\Catalog\Controller\Product\CategoryListController::class', 'method' => 'indexAction' ] ], '/category/{slug}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_category', 'controller' => 'Handel\Catalog\Controller\Product\CategoryController::class', 'method' => 'indexAction' ] ], '/manufacturer-list' => [ Request::METHOD_GET => [ 'alias' => 'catalog_manufacturer_list', 'controller' => 'Handel\Catalog\Controller\Product\ManufacturerListController::class', 'method' => 'indexAction' ] ], '/manufacturer/{slug}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_manufacturer', 'controller' => 'Handel\Catalog\Controller\Product\ManufacturerController::class', 'method' => 'indexAction' ] ], '/information-list' => [ Request::METHOD_GET => [ 'alias' => 'catalog_information_list', 'controller' => 'Handel\Catalog\Controller\Information\InformationListController::class', 'method' => 'indexAction' ] ], '/information/{slug}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_information', 'controller' => 'Handel\Catalog\Controller\Information\InformationController::class', 'method' => 'indexAction' ] ], '/terms-and-conditions' => [ Request::METHOD_GET => [ 'alias' => 'catalog_terms', 'controller' => 'Handel\Catalog\Controller\Information\TermsController::class', 'method' => 'indexAction' ] ], '/about-us' => [ Request::METHOD_GET => [ 'alias' => 'catalog_about', 'controller' => 'Handel\Catalog\Controller\Information\AboutController::class', 'method' => 'indexAction' ] ], '/search' => [ Request::METHOD_GET => [ 'alias' => 'catalog_search', 'controller' => 'Handel\Catalog\Controller\Product\SearchController::class', 'method' => 'indexAction' ] ], '/account' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_account', 'controller' => 'Handel\Catalog\Controller\Account\AccountController::class', 'method' => 'indexAction' ] ], '/account/address' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_address_book', 'controller' => 'Handel\Catalog\Controller\Account\AddressBookController::class', 'method' => 'indexAction' ] ], '/account/address/{id}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_address', 'controller' => 'Handel\Catalog\Controller\Account\AddressController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_address', 'controller' => 'Handel\Catalog\Controller\Account\AddressController::class', 'method' => 'postAction' ], ], '/account/forgotten' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_forgotten', 'controller' => 'Handel\Catalog\Controller\Account\ForgottenController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_forgotten_post', 'controller' => 'Handel\Catalog\Controller\Account\ForgottenController::class', 'method' => 'postAction' ], ], '/account/login' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_login', 'controller' => 'Handel\Catalog\Controller\Account\LoginController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_login_post', 'controller' => 'Handel\Catalog\Controller\Account\LoginController::class', 'method' => 'postAction' ] ], '/account/logout' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_logout', 'controller' => 'Handel\Catalog\Controller\Account\LogoutController::class', 'method' => 'indexAction' ] ], '/account/newsletter' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_newsletter', 'controller' => 'Handel\Catalog\Controller\Account\NewsletterController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_newsletter_post', 'controller' => 'Handel\Catalog\Controller\Account\NewsletterController::class', 'method' => 'postAction' ], ], '/account/register' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_register', 'controller' => 'Handel\Catalog\Controller\Account\RegisterController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_register_post', 'controller' => 'Handel\Catalog\Controller\Account\RegisterController::class', 'method' => 'postAction' ] ], '/account/order-history/{id}' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_order', 'controller' => 'Handel\Catalog\Controller\Account\OrderController::class', 'method' => 'indexAction' ] ], '/account/order-history' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_order_history', 'controller' => 'Handel\Catalog\Controller\Account\OrderHistoryController::class', 'method' => 'indexAction' ] ], '/account/wishlist' => [ Request::METHOD_GET => [ 'alias' => 'catalog_account_wishlist', 'controller' => 'Handel\Catalog\Controller\Account\WishListController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_account_wishlist_post', 'controller' => 'Handel\Catalog\Controller\Account\WishListController::class', 'method' => 'postAction' ] ], '/affiliate/login' => [ Request::METHOD_GET => [ 'alias' => 'catalog_affiliate_login', 'controller' => 'Handel\Catalog\Controller\Affiliate\LoginController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_affiliate_login_post', 'controller' => 'Handel\Catalog\Controller\Affiliate\LoginController::class', 'method' => 'postAction' ], ], '/affiliate/register' => [ Request::METHOD_GET => [ 'alias' => 'catalog_affiliate_register', 'controller' => 'Handel\Catalog\Controller\Affiliate\RegisterController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_affiliate_register_post', 'controller' => 'Handel\Catalog\Controller\Affiliate\RegisterController::class', 'method' => 'postAction' ] ], '/cart' => [ Request::METHOD_GET => [ 'alias' => 'catalog_cart', 'controller' => 'Handel\Catalog\Controller\Common\CartController::class', 'method' => 'indexAction' ], Request::METHOD_POST => [ 'alias' => 'catalog_cart_post', 'controller' => 'Handel\Catalog\Controller\Common\CartController::class', 'method' => 'postAction' ] ], '/checkout' => [ Request::METHOD_GET => [ 'alias' => 'catalog_checkout', 'controller' => 'Handel\Catalog\Controller\Checkout\CheckoutController::class', 'method' => 'indexAction' ] ], '/checkout/payment-address' => [ Request::METHOD_GET => [ 'alias' => 'catalog_checkout_payment_address', 'controller' => 'Handel\Catalog\Controller\Checkout\BillingAddressController::class', 'method' => 'indexAction' ] ], '/checkout/shipping-address' => [ Request::METHOD_GET => [ 'alias' => 'catalog_checkout_delivery_address', 'controller' => 'Handel\Catalog\Controller\Checkout\ShippingAddressController::class', 'method' => 'indexAction' ] ], '/checkout/shipping-method' => [ Request::METHOD_GET => [ 'alias' => 'catalog_checkout_delivery_method', 'controller' => 'Handel\Catalog\Controller\Checkout\ShippingMethodController::class', 'method' => 'indexAction' ] ], '/' => [ Request::METHOD_GET => [ 'alias' => 'catalog_index', 'controller' => 'Handel\Catalog\Controller\Common\HomeController::class', 'method' => 'indexAction' ] ], ); $output = []; foreach ($routes as $path => $data) { foreach ($data as $http_method => $values) { $alias = $values['alias']; $controller = $values['controller']; $method = $values['method']; $output[$alias] = [ 'path' => $path, 'controller' => [$controller, $method], 'requirements' => [], 'defaults' => [], 'methods' => [$http_method] ]; } } var_dump($output);
Output for git.master, git.master_jit, rfc.property-hooks
array(40) { ["catalog_product_list"]=> array(5) { ["path"]=> string(13) "/product-list" ["controller"]=> array(2) { [0]=> string(62) "Handel\Catalog\Controller\Product\ProductListController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_product"]=> array(5) { ["path"]=> string(15) "/product/{slug}" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Product\ProductController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_compare_index"]=> array(5) { ["path"]=> string(8) "/compare" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Product\CompareController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_compare_add"]=> array(5) { ["path"]=> string(8) "/compare" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Product\CompareController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_category_list"]=> array(5) { ["path"]=> string(14) "/category-list" ["controller"]=> array(2) { [0]=> string(63) "Handel\Catalog\Controller\Product\CategoryListController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_category"]=> array(5) { ["path"]=> string(16) "/category/{slug}" ["controller"]=> array(2) { [0]=> string(59) "Handel\Catalog\Controller\Product\CategoryController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_manufacturer_list"]=> array(5) { ["path"]=> string(18) "/manufacturer-list" ["controller"]=> array(2) { [0]=> string(67) "Handel\Catalog\Controller\Product\ManufacturerListController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_manufacturer"]=> array(5) { ["path"]=> string(20) "/manufacturer/{slug}" ["controller"]=> array(2) { [0]=> string(63) "Handel\Catalog\Controller\Product\ManufacturerController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_information_list"]=> array(5) { ["path"]=> string(17) "/information-list" ["controller"]=> array(2) { [0]=> string(70) "Handel\Catalog\Controller\Information\InformationListController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_information"]=> array(5) { ["path"]=> string(19) "/information/{slug}" ["controller"]=> array(2) { [0]=> string(66) "Handel\Catalog\Controller\Information\InformationController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_terms"]=> array(5) { ["path"]=> string(21) "/terms-and-conditions" ["controller"]=> array(2) { [0]=> string(60) "Handel\Catalog\Controller\Information\TermsController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_about"]=> array(5) { ["path"]=> string(9) "/about-us" ["controller"]=> array(2) { [0]=> string(60) "Handel\Catalog\Controller\Information\AboutController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_search"]=> array(5) { ["path"]=> string(7) "/search" ["controller"]=> array(2) { [0]=> string(57) "Handel\Catalog\Controller\Product\SearchController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_account"]=> array(5) { ["path"]=> string(8) "/account" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Account\AccountController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_address_book"]=> array(5) { ["path"]=> string(16) "/account/address" ["controller"]=> array(2) { [0]=> string(62) "Handel\Catalog\Controller\Account\AddressBookController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_address"]=> array(5) { ["path"]=> string(21) "/account/address/{id}" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Account\AddressController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_account_forgotten"]=> array(5) { ["path"]=> string(18) "/account/forgotten" ["controller"]=> array(2) { [0]=> string(60) "Handel\Catalog\Controller\Account\ForgottenController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_forgotten_post"]=> array(5) { ["path"]=> string(18) "/account/forgotten" ["controller"]=> array(2) { [0]=> string(60) "Handel\Catalog\Controller\Account\ForgottenController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_account_login"]=> array(5) { ["path"]=> string(14) "/account/login" ["controller"]=> array(2) { [0]=> string(56) "Handel\Catalog\Controller\Account\LoginController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_login_post"]=> array(5) { ["path"]=> string(14) "/account/login" ["controller"]=> array(2) { [0]=> string(56) "Handel\Catalog\Controller\Account\LoginController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_account_logout"]=> array(5) { ["path"]=> string(15) "/account/logout" ["controller"]=> array(2) { [0]=> string(57) "Handel\Catalog\Controller\Account\LogoutController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_newsletter"]=> array(5) { ["path"]=> string(19) "/account/newsletter" ["controller"]=> array(2) { [0]=> string(61) "Handel\Catalog\Controller\Account\NewsletterController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_newsletter_post"]=> array(5) { ["path"]=> string(19) "/account/newsletter" ["controller"]=> array(2) { [0]=> string(61) "Handel\Catalog\Controller\Account\NewsletterController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_account_register"]=> array(5) { ["path"]=> string(17) "/account/register" ["controller"]=> array(2) { [0]=> string(59) "Handel\Catalog\Controller\Account\RegisterController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_register_post"]=> array(5) { ["path"]=> string(17) "/account/register" ["controller"]=> array(2) { [0]=> string(59) "Handel\Catalog\Controller\Account\RegisterController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_account_order"]=> array(5) { ["path"]=> string(27) "/account/order-history/{id}" ["controller"]=> array(2) { [0]=> string(56) "Handel\Catalog\Controller\Account\OrderController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_order_history"]=> array(5) { ["path"]=> string(22) "/account/order-history" ["controller"]=> array(2) { [0]=> string(63) "Handel\Catalog\Controller\Account\OrderHistoryController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_wishlist"]=> array(5) { ["path"]=> string(17) "/account/wishlist" ["controller"]=> array(2) { [0]=> string(59) "Handel\Catalog\Controller\Account\WishListController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_account_wishlist_post"]=> array(5) { ["path"]=> string(17) "/account/wishlist" ["controller"]=> array(2) { [0]=> string(59) "Handel\Catalog\Controller\Account\WishListController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_affiliate_login"]=> array(5) { ["path"]=> string(16) "/affiliate/login" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Affiliate\LoginController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_affiliate_login_post"]=> array(5) { ["path"]=> string(16) "/affiliate/login" ["controller"]=> array(2) { [0]=> string(58) "Handel\Catalog\Controller\Affiliate\LoginController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_affiliate_register"]=> array(5) { ["path"]=> string(19) "/affiliate/register" ["controller"]=> array(2) { [0]=> string(61) "Handel\Catalog\Controller\Affiliate\RegisterController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_affiliate_register_post"]=> array(5) { ["path"]=> string(19) "/affiliate/register" ["controller"]=> array(2) { [0]=> string(61) "Handel\Catalog\Controller\Affiliate\RegisterController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_cart"]=> array(5) { ["path"]=> string(5) "/cart" ["controller"]=> array(2) { [0]=> string(54) "Handel\Catalog\Controller\Common\CartController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_cart_post"]=> array(5) { ["path"]=> string(5) "/cart" ["controller"]=> array(2) { [0]=> string(54) "Handel\Catalog\Controller\Common\CartController::class" [1]=> string(10) "postAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(4) "POST" } } ["catalog_checkout"]=> array(5) { ["path"]=> string(9) "/checkout" ["controller"]=> array(2) { [0]=> string(60) "Handel\Catalog\Controller\Checkout\CheckoutController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_checkout_payment_address"]=> array(5) { ["path"]=> string(25) "/checkout/payment-address" ["controller"]=> array(2) { [0]=> string(66) "Handel\Catalog\Controller\Checkout\BillingAddressController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_checkout_delivery_address"]=> array(5) { ["path"]=> string(26) "/checkout/shipping-address" ["controller"]=> array(2) { [0]=> string(67) "Handel\Catalog\Controller\Checkout\ShippingAddressController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_checkout_delivery_method"]=> array(5) { ["path"]=> string(25) "/checkout/shipping-method" ["controller"]=> array(2) { [0]=> string(66) "Handel\Catalog\Controller\Checkout\ShippingMethodController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } ["catalog_index"]=> array(5) { ["path"]=> string(1) "/" ["controller"]=> array(2) { [0]=> string(54) "Handel\Catalog\Controller\Common\HomeController::class" [1]=> string(11) "indexAction" } ["requirements"]=> array(0) { } ["defaults"]=> array(0) { } ["methods"]=> array(1) { [0]=> string(3) "GET" } } }

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
51.19 ms | 437 KiB | 8 Q