ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## **预览** 在本教程中,我们将创建一个带有简单注册表单的应用程序,同时介绍Phalcon的主要设计方面 本教程介绍了一个简单的MVC应用程序的实现,展示了使用Phalcon实现它是多么快速和容易。一旦开发完成,您就可以使用这个应用程序并扩展它以满足您的需要。本教程中的代码也可以用来学习Phalcon特定概念和想法。 如果你只是想开始,你可以跳过这一步,用我们的开发工具自动创建一个Phalcon项目。 使用本指南的最佳方法是按照本指南进行操作,并尝试从中获得乐趣。您可以在这里获得完整的代码。如果您遇到问题或有问题,请访问我们的Discord或我们的论坛。 ## **目录结构** **Phalcon的一个关键特征是它是松散耦合的。**因此,您可以使用任何方便的目录结构。在本教程中,我们将使用MVC应用程序中常用的标准目录结构。 ``` └── 根目录 ├── app │ ├── controllers │ │ ├── IndexController.php │ │ └── SignupController.php │ ├── models │ │ └── Users.php │ └── views └── public ├── css ├── img ├── index.php └── js ``` > 注意:由于Phalcon暴露的所有代码都封装在扩展中(你已经在你的web服务器上加载了),你不会看到包含Phalcon代码的供应商目录。你需要的一切都在内存中。如果您还没有安装应用程序,请转到安装页面并在继续本教程之前完成安装 如果这是全新的,建议你也安装Phalcon Devtools。DevTools利用PHP内置的web服务器,让你几乎可以立即运行你的应用程序。如果你选择了这个选项,你需要在你的项目根目录下有一个.htrouter.php文件,包含以下内容: ``` <?php $uri = urldecode(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)); if ($uri !== '/' && file_exists(__DIR__ . '/public' . $uri)) { return false; } $_GET['_url'] = $_SERVER['REQUEST_URI']; require_once __DIR__ . '/public/index.php'; ``` 在我们的教程中,这个文件必须位于教程目录中。 你也可以使用nginX, apache, cherokee或其他web服务器。您可以查看web服务器设置页面的说明。 ## **启动** 您需要创建的第一个文件是引导文件。该文件充当应用程序的入口点和配置。在这个文件中,您可以实现组件的初始化,也可以定义应用程序的行为。 #### 这个文件处理3件事: * 组件自动装弹机的注册 * 配置服务并将它们注册到依赖注入上下文中 * 解析应用程序的HTTP请求 ## 自动加载 我们将使用Phalcon\\Loader一个符合PSR-4的文件加载器。通常应该添加到自动装弹器的是你的控制器和模型。您还可以注册目录,以便扫描应用程序所需的文件。 首先,让我们使用Phalcon\\Loader注册我们应用程序的控制器和模型目录: `public/index.php` ``` <?php use Phalcon\Loader; define('BASE_PATH', dirname(__DIR__)); define('APP_PATH', BASE_PATH . '/app'); // ... $loader = new Loader(); $loader->registerDirs( [ APP_PATH . '/controllers/', APP_PATH . '/models/', ] ); $loader->register(); ```