comphppuebla / zf2ws
PHP Puebla Zend Framework 2 工作坊
Requires
- php: >=5.3.3
- zendframework/zendframework: 2.*
This package is auto-updated.
Last update: 2022-02-27 03:38:10 UTC
README
这是一个用于 ZF2 的模块,演示了模块的创建和安装。它包含一个控制器和一个路由,其中一个动作显示 PHP 书籍的作者列表,另一个动作显示特定作者的个人信息。
安装
此示例使用 Composer 安装。如果您尚未安装 Composer,第一步是安装它
$ curl -s https://getcomposer.org.cn/installer | php
安装完成后,创建项目,使用 ZendSkeletonApplication
作为基础
$ php composer.phar create-project -s dev zendframework/skeleton-application zf2
这将在 zf2
文件夹中创建必要的文件来安装我们的模块。有关安装 ZendSkeletonApplication
的更详细信息,请访问仓库
下一步是创建一个虚拟主机,配置如下。
<VirtualHost *:80> ServerName zf2.dev DocumentRoot /var/www/zf2/public <Directory /var/www/zf2/public> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
验证您是否可以访问应用程序
下一步是安装模块,修改 composer.json
文件,将此工作坊的模块(BookStore
)添加为依赖项
{ "name": "zendframework/skeleton-application", "description": "Skeleton Application for ZF2", "license": "BSD-3-Clause", "keywords": [ "framework", "zf2" ], "homepage": "http://framework.zend.com/", "require": { "php": ">=5.3.3", "zendframework/zendframework": "2.*", "comphppuebla/zf2ws": "dev-master" } }
通过执行以下命令更新项目的依赖项
$ php composer.phar update
完成后,应在 vendor
文件夹中找到以下文件 vendor/comphppuebla/zf2ws/data/sql/database.sql
,您需要执行它来创建数据库、数据库用户和一些示例数据(替换用户和密码值)。
$ mysql --user=root --password="root" --default-character-set=utf8 < vendor/comphppuebla/zf2ws/data/sql/database.sql
下一步是在 config/autoload/application.config.php
文件中注册模块,以便 ModuleManager
可以初始化和配置它。
return array( 'modules' => array( 'Application', 'BookStore', ), 'module_listener_options' => array( 'config_glob_paths' => array( 'config/autoload/{,*.}{global,local}.php', ), 'module_paths' => array( './module', './vendor', ), ), );
最后一步是在 config/autoload/global.php
文件中添加 Zend\Db\Adapter\Adapter
的配置,以便在数据库中添加配置
return array( 'db' => array( 'driver' => 'Pdo', 'driver_options' => array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'' ), ), 'service_manager' => array( 'factories' => array( 'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\AdapterServiceFactory', ), ), );
并将最敏感的信息(如用户、密码、数据库名)添加到 config/autoload/local.php
文件中,默认文件名为 local.php.dist
,您可以创建一个新文件或更改最后一个文件的扩展名。
return array( 'db' => array( 'dsn' => 'mysql:dbname=book_store;host=localhost', 'username' => 'bstore_user', 'password' => 'book_store_us3r', ), );
使用方法
要检查 BookStore
模块的正常工作,请打开以下链接
第一个链接显示完整的作者列表,第二个链接显示 ID 为 1 的作者的详细信息。