abollinger / partez
一个简单且快速的PHP网页应用入门套件
Requires
- php: ^8.1
- abollinger/bricolo: ^1.3
- abollinger/helpers: ^1.2
- abollinger/router: ^1.0
- abollinger/session: ^1.1
- twig/html-extra: ^3.8
- twig/intl-extra: ^3.8
- twig/twig: ^3.8
- vlucas/phpdotenv: ^5.6
- dev-master
- v2.6.2
- v2.6.1
- v2.6.0
- v2.5.9
- v2.5.8
- v2.5.7
- v2.5.6
- 2.5.5
- v2.5.4
- v2.5.3
- v2.5.2
- v2.5.1
- v2.5.0
- v2.4.9
- v2.4.8
- v2.4.7
- v2.4.6
- v2.4.5
- v2.4.2
- v2.4.1
- v2.4.0
- v2.3.0
- v2.2.8
- v2.2.7
- v2.2.5
- v2.2.4
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- v2.1.0
- v2.0.0
- v1.3.0
- v1.2.4
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
This package is auto-updated.
Last update: 2024-09-11 08:00:53 UTC
README
一个简单且快速的PHP网页应用入门套件。
此套件旨在帮助开发者快速创建简单的PHP应用。
该项目已在 Packagist 上发布,因此您可以根据它创建新的项目。
入门
要求
您只需要 Composer 来创建项目并运行服务器(开发模式)。
步骤
-
首先为您的项目创建一个新文件夹,并在其中打开一个终端。
-
运行以下命令。这将创建所有必要的文件并安装项目的依赖项。
composer create-project abollinger/partez .
-
然后您需要在项目的根目录下创建一个
.env
文件。这应该是自动完成的,但如果不是,您可以使用.env.example
来查看此时 .env 可以包含的内容。 -
最后运行以下简单命令
composer serve
然后在浏览器中打开 localhost:1234 来查看结果(端口号可能会根据您机器上已使用的其他端口号而更改。请检查控制台中的日志)。
如何工作
配置
-
您可能想自定义应用的HTML头部。请访问
src/view/layout.html.twig
文件并做出所需更改。 -
关于路由器配置,描述如下。
路由器
路由是从 src/Controller
文件夹中包含的控制器文件自动推导出来的。为了使其正常工作,每个控制器都必须按以下方式块注释:
/** * @Route("/", name="Home", auth=false) */
第一个元素 "/"
是页面将通过该URI访问。这是必须的。第二个元素 name="Home"
是页面的名称。这也是必须的。最后,第三个元素允许您通过 $this->session->isLoggedAndAuthorized(true)
限制页面访问权限。
页面
页面由控制器在 src/Controller
路径渲染。此控制器必须是 Abstract/Controller.php
中定义的主要控制器的一个扩展。在页面控制器中,您必须定义 init()
方法,该方法将调用 renderView("page.html.twig")
方法,该方法渲染twig模板。
twig模板位于项目根目录的 src/view
中。基本的twig布局定义在 src/view/layout.html.twig
中,每个页面的twig模板都扩展了此布局。
公共文件夹
public
目录包含索引.php入口点,基本的js、css和图片文件夹。请自由地自定义这部分。
API
在 api/
文件夹中提供了一个基本的API。此API由运行在MySQL上的数据库提供支持。
构建方式
- 此套件使用 PHP 构建,尽可能多地使用 MVC模式。我们使用 Twig 模板引擎生成页面。
- 样式现在由 Bootstrap v5.2 驱动,使用简单的CDN链接。
- 您可以在公共文件夹或之前提到的地方添加JS脚本。
基本结构是
. ├── api/ │ ├── Abstract/ (Basic logic of the api) │ ├── Config/ (Configuration files) │ ├── Controller/ │ │ └── [Controllers, typo is <Name>Controller.php] │ ├── Model/ │ │ └── [Models, typo is <Name>Model.php] │ ├── Provider/ (Providers logic like Database or any other resources provider) │ ├── Router/ (main router logic for the api) │ ├── View/ (set up a standardized response for every API request) │ └── Starter.php ├── public/ │ ├── css/ │ ├── images/ │ ├── js/ │ └── index.php ├── src/ │ ├── Abstract/ (Basic logic of the app) │ ├── App/ (Starter of the app) │ ├── Config/ (Some configuration files like Bootstrap or Session) │ ├── Controller/ │ │ └── [Controllers, typo is <Name>Controller.php] │ ├── Router/ (Contains main Router logic) │ └── view/ (Contain Twig templates for your app) └── .env
贡献
您能提供的任何贡献都将被极大地赞赏!请按照以下步骤提交您的想法
- 分叉项目
- 创建您的功能分支,使用
git checkout -b features/Myfeature
- 提交您的作品
git commit -m "✨ 引入 Myfeature!"
- 推送
git push origin features/Myfeature
- 打开一个Pull Request
我们将对您的工作进行审查,如果一切正常,将其合并到主分支。不要犹豫,每一个小小的贡献都是使这个启动套件变得更庞大的绝佳方式!
联系
如果您对这个包有任何疑问,如何安装、使用或改进,请随时联系我
Antoine Bollinger - LinkedIn - antoine.bollinger@gmail.com
您可以用 🇫🇷, 🇧🇷 或 🇬🇧 与我交流。