demo.php
<?php namespace admin; use controllersBaseControllers class Demo extends BaseControllers { function index(){ echo "index ......"; $this->success('/home',"成功"); } function add(){ echo "add ......"; $this->success('/home/add',"失败"); } }
BaseController.php
<?php namespace controllers; class BaseControllers{ protected function success($url,$mess){ echo "<script>"; echo "alert('{$mess}')"; if (!empty($url)){ echo "location.href='{$url}'"; } echo "</script>"; } protected function error($url,$mess){ echo "<script>"; echo "alert('ERROR:{$mess}')"; if (!empty($url)){ echo "location.href='{$url}'"; } echo "</script>"; } }
composer.json
{ "require": { "noahbuscher/macaw": "dev-master" }, "autoload": { "psr-4": { "admin" : "app/controllers/admin/", "home" : "app/controllers/home/", "controllers" : "app/controllers/" } } }
index.php
<?php //包含组件库 require('vendor/au use NoahBuscherMa Macaw::get('/',fun echo "11111111 }); Macaw::get('/(:num echo "11111111 }); Macaw::get('/hello echo "22222222 }); Macaw::get("/a Macaw::get("/a Macaw::get("/h Macaw::get("/h Macaw::dispatch();
需要了解的PHP知识
我去找AI帮我整理
User::make()
是 PHP 中的一个静态方法调用。以下是与该代码相关的 PHP 知识点:
1. 静态方法
User::make()
中的::
是范围解析操作符(也称为双冒号),用于调用类的静态方法或访问静态属性。- 静态方法属于类本身,而不是类的实例。因此,可以直接通过类名调用,而不需要创建对象。
- 静态方法通常用于工具函数、工厂方法(如
make()
)或单例模式。
class User { public static function make() { return new self(); } } $user = User::make(); // 调用静态方法
2. 工厂方法
make()
是一个常见的工厂方法名称,用于创建并返回类的实例。- 工厂方法可以封装对象的创建逻辑,方便统一管理对象的初始化过程。
class User { public static function make($name) { $user = new self(); $user->setName($name); return $user; } private function setName($name) { $this->name = $name; } } $user = User::make("John");
命名空间相关视频:
https://www.bilibili.com/video/BV1Zx411R7Wv/