clancats / framework
ClanCats 框架,因为您的宝贵时间。HMVC PHP 框架。
Requires
- clancats/core: 2.0.*
This package is auto-updated.
Last update: 2024-09-24 01:30:56 UTC
README
ClanCatsFramework,轻松的 Web 开发,无过度设计。HMVC PHP 框架。
这是应用程序仓库,如果您想贡献,请查看核心仓库: https://github.com/ClanCats/Core
哲学
有许多出色的框架,我不想重新发明轮子。我对 CCF 的愿景是一个
- 现代
- 架构良好
- 高性能
- 用户友好
全栈 PHP 框架。
用户友好或开发者友好是核心哲学。技巧应该是保持简单解决方案和最佳解决方案之间的平衡。我曾经使用 Zend 和 Symfony2 开发了很多大型应用程序,总有那么一点,当我看到代码时,我会想
"等等,为了生成一个随机字符串,我需要一个扩展容器的类,它提供了 util 服务工厂来创建一个新的字符串 util 实例,我可以在上面执行随机字符串方法?"。
通常,使用这些框架达到简单目标是一种完全过度设计。所以 CCF 的目标是通过遵循 100% 的约定来使开发舒适。
历史
这个 PHP 框架最初于 2010 年构建,作为名为 "ClanCats" 的社交平台的核心。2012 年,我决定将核心与应用程序分开,于是 CCF 诞生了。在开发几个 CCF v1.0 应用程序后,到了重新思考核心结构并重写整个内容的时刻,以便开源。
安装
使用一条命令就可以简单地设置新的 CCF2 实例,换句话说,就是使用 composer。
运行以下命令创建新的 CCF 项目。
$ composer create-project clancats/framework <your project name> --prefer-dist
未安装 composer?请在此处阅读安装指南:https://getcomposer.org.cn/download/
要求
要运行此框架,请检查以下要求
- PHP >= 5.3.9
- PHP JSON
- PHP MCrypt
- PHP Multibyte String
- Apache with mod_rewrite 或 Nginx
权限
对于某些操作(存储、packtacular 等),我们可能需要在文件系统中授予写入权限。
存储: /CCF/storage/
Packtacular: /public/assets/packtacular/
您还可以使用 cli
doctor 设置这些。
$ php cli doctor::permissions
如果您在设置权限时遇到错误,请尝试使用 sudo
运行该命令。
结构
在新 CCF2 文件夹结构中,我们将一些内容分开,以提高部署效率。
- CCF/
- app/ // Your Application
- core/ // The CCF Core
- orbit/ // Orbit ships ( plugins / modules )
- storage/ // Internal file storage for logs, cache etc.
- vendor/ // Composer vendor
- boot/
- environment.php // The Environment configuration
- paths.php // Framework paths configuration
- cli // Command line utility
- composer.json
- framework.php
- phpunit.xml
- public/
- index.php // Web Application public
配置
通常不需要配置即可运行框架(取决于您的环境)。然而,我们建议在开始开发您出色的应用程序之前进行一些配置。
引导
引导配置允许您更改 CCF 的核心行为。
环境
定义您的应用程序如何检测环境。
您可以创建一个完全属于自己的脚本以返回运行时环境,或者可以使用 env detector。
/boot/environment.php
查看环境文档: 环境
路径
打算在一台机器上运行多个CCF安装?只使用单个核心?这没问题,因为您可以修改CCF路径。
/boot/paths.php
您还可以自由添加新的路径。向数组中添加新元素会将路径添加到运行时,并创建一个路径定义
<value> = <value>PATH
test = TESTPATH
主配置
您将在以下位置找到初始的 主配置文件
/CCF/app/config/main.config.php
安全盐
在CCF的几个地方,将通过使用盐来加密某些内容。您应该定义自己的盐以保持应用程序安全。
您可以使用以下命令生成随机盐
$ php cli doctor::security_key
当使用composer创建新项目时,盐会自动生成。
否则,您将在主配置中的安全部分找到密钥
'security' => array( 'salt' => 'L~7(%(9=@9+8u.Oo4+ysT45fkA4,82', ),
路径偏移
也许您希望从域根以外的位置运行应用程序,例如从子文件夹。 论坛。
// www.yourdomain.com/forums/ 'url' => array( 'path' => '/forums/', ),
有关其他一切,请查看主配置文档: 配置
路由
根据您的系统,您可能需要设置一些东西,以便所有公共请求都结束在 public/index.php
文件。
CCF附带了一个为启用 mod_rewrite
的apache系统提供的 .htaccess
RewriteEngine On # RewriteBase /subdir/ # Only Rewrite URL if file not exits RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Default RewriteRule ^(.*)$ index.php?/$1 [QSA,L]