artdevue / phalcon-scelet
Phalcon的框架。
Requires
- php: >=7.0
- filp/whoops: ^2.1
- vlucas/phpdotenv: ^2.5
Requires (Dev)
- phalcon/zephir: dev-master
- phpunit/phpunit: ^4.8
- predis/predis: ^1.1
- symfony/console: *
This package is auto-updated.
Last update: 2024-09-23 06:11:34 UTC
README
这是一个基于Phalcon框架编写的Phalcon应用程序框架,用于性能提升。该项目创建的目的是以简单的方式开发应用程序。
包含
- ENV
- 多模态
- 多语言
- 翻译
- 调试工具(PDW)(本代码以该代码为基础)
祝您玩得开心 :)
如何安装
使用Composer(推荐)
安装Phalcon框架的最佳方式是使用Composer,如果您还没有安装它
在终端中运行代码
composer create-project artdevue/phalcon-scelet -s dev composer update bower update
使用Git
首先您需要克隆项目,更新供应商
git clone https://github.com/artdevue/phalcon-scelet.git ./project
cd project
composer update
bower update
要求
-
= PHP 7.0.x 开发资源
-
= Phalcon 3.0.2
功能
设置完成后,您将拥有多模块应用程序。
- RESTful API模块 - 对所有类似JSON的请求做出响应。
- BACKEND和FRONTEND - 一个多模块应用程序使用多个模块的同一文档根目录。
ENV
根据应用程序运行的环境,通常会有不同的配置值很有帮助。例如,您可能希望在生产服务器上使用与本地不同的缓存驱动程序。项目的主要文件位于项目根目录的.env
文件中。如果您需要为不同的服务器IP添加配置,只需添加配置文件config_local.php IP和将用于此IP的文件名。例如
return [ '192.168.100.2' => '.env_local' ];
系统会自动创建.env.example
文件的副本
您可以通过外部环境变量(例如服务器级别或系统级别的环境变量)覆盖
.env
文件中的任何变量。
环境变量类型
您.env
文件中的所有变量都被解析为字符串,因此创建了一些保留值,以便您可以从env()
函数返回更广泛的数据类型。
如果您需要定义一个包含空格的值的变量,可以通过将值放在双引号中来定义。
APP_NAME="My Application"
检索环境配置
此文件中列出的所有变量将在您的应用程序收到请求时加载到PHP超级全局变量$_ENV
中。但是,您可以使用env辅助函数在配置文件中检索这些变量的值。实际上,如果您查看Phalcon配置文件,您会发现已经使用了几个这样的选项。
'debug' => env('APP_DEBUG', false),
传递给env函数的第二个值是“默认值”。如果给定键不存在环境变量,则将使用此值。
安装模块
如果您想安装新的模块,您需要使用终端运行以下命令
$ php apps/cli.php modules create modulename
模块名称 - 用模块名称替换
例如,在终端中执行以下命令后
$ php apps/cli.php modules create catalog
在终端中,我们看到报告模块安装情况
$ php apps/cli.php modules create catalog Do you really want to install the module catalog? Type 'yes' to continue: yes Thank you, continuing... Reading configuration file... Creating a backup of the configuration file... Record changes in the configuration file... Create directories and files for this new module... Installing the module is complete! Use with pleasure!
安装新的模块后,将立即在http://site.com/catalog中可用
此命令的语法
$ php apps/cli.php modules create $nameModule $prefixRouter $hostName
- $nameModule - (String - 必填值!) 您的模块名称
- $prefixRouter - (String) 如果路由前缀与模块名称不同,则在此处输入。如果您选择 - null - 则不会添加前缀。
- $hostName - (String) 主机名称,如果您希望模块位于其他主机上。例如:http://catalog.site.com
使用多语言
- 您必须在配置文件中激活 "multilang => true" 选项。
- 参数 "default_lang => 'en'" 被分配为默认语言 (当前为 en)
- 将项目中使用的语言数组添加到配置文件的 "languages" 参数
- 默认语言在 URL 地址中不显示前缀。例如
site.com, site.com/page
- 如果使用其他语言,则应在 URL 地址的开头添加前缀。例如
site.com/ua, site.com/ua/page
- 通过配置获取活动语言:在控制器中 $this->config->lang_active 和在 Volt 中 config.lang_active
使用翻译(来源取自 官方文档)
所有翻译文件位于配置文件中指定的目录中,参数为 name_lang_folder(默认为 lang 文件夹),以及配置文件中默认语言参数 default_lang 的子文件夹中(默认语言 en)
变量名称由文件名和文件部分的数组键组成。
控制器中的使用示例
$accepted = $this->trans->_("validation.accepted", ['attribute' => 'test']);
或
__("validation.accepted", ['attribute' => 'test'])
模板 volt 中的使用示例
{{ trans._("validation.accepted", ['attribute': 'test']) }}
获取当前活动语言
$this->config->get('lang_active');
或
{{ config.lang_active }}
使用调试小部件
您只需在配置文件中激活 debug
或在 .env 文件中的 APP_DEBUG
。如果您只想向个别用户显示调试栏,请简单地将用户的 IP 添加到 debugbar_api
数组中。
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。