Yii2 fournit officiellement un exemple de code de cadre de modèle avancé gratuit, mais la fonction est relativement simple. Un projet de centre commercial open source a été développé sur la base du modèle avancé yii2. Il est gratuit et open source et peut être utilisé pour le développement secondaire ou l'apprentissage. Voyons si tout le monde peut l'utiliser.
Démo front-end : test.shopwind.net
Démo back-end : admin.test.shopwind.net (Compte : admin, Mot de passe : 123456)
Adresse de téléchargement du code source : gitee.com/shopwind /yii2-shopwind
Image de démonstration du projet :
Structure du répertoire
├─shopwind------------------------------------------应用目录 │ ├─apiserver-------------------------------------API接口服务模块 │ │ ├─config------------------------------------配置文件 │ │ ├─controllers-------------------------------模块控制器 │ │ ├─languages---------------------------------语言包 │ │ ├─library-----------------------------------模块类库 │ │ │ ├─Formatter.php--------------------------数据格式化类 │ │ │ ├─Respond.php----------------------------数据输入输出类 │ │ │ └─Signature.php--------------------------数据验证签名类 │ │ ├─models------------------------------------业务层 │ │ ├─runtime-----------------------------------应用运行缓存文件 │ │ └─web---------------------------------------Web部署目录(对外访问目录) │ │ └─index.php------------------------------API入口文件 │ ├─backend---------------------------------------后台模块 │ │ ├─config------------------------------------配置文件 │ │ ├─controllers-------------------------------模块控制器 │ │ ├─languages---------------------------------语言包 │ │ ├─library-----------------------------------模块类库 │ │ ├─models------------------------------------业务层 │ │ ├─runtime-----------------------------------应用运行缓存文件 │ │ └─web---------------------------------------Web部署目录(对外访问目录) │ │ └─assets--------------------------------静态资源发布目录 │ │ └─templates-----------------------------模板(视图)文件目录 │ │ └─index.php------------------------------后台入口文件 │ ├─common----------------------------------------公共文件目录 │ │ ├─actions-----------------------------------公共动作目录 │ │ ├─bussiness---------------------------------业务逻辑层 │ │ ├─components--------------------------------公共组件类库 │ │ ├─config------------------------------------全局配置文件 │ │ ├─controllers-------------------------------控制器父类 │ │ ├─install-----------------------------------安装程序类 │ │ ├─library-----------------------------------公共逻辑层 │ │ ├─mail--------------------------------------邮件发送类 │ │ ├─models------------------------------------数据库模型类 │ │ ├─plugins-----------------------------------公共插件类库 │ │ │ ├─connect-------------------------------第三方登录插件目录 │ │ │ │ ├─qq--------------------------------qq登录插件 │ │ │ │ ├─alipay----------------------------支付宝登录插件 │ │ │ │ ├─weixin----------------------------微信登录插件 │ │ │ │ └─xwb-------------------------------新浪微博登录插件 │ │ │ ├─express-------------------------------快递跟踪插件目录 │ │ │ ├─oss-----------------------------------对象存储插件目录 │ │ │ ├─payment-------------------------------支付插件目录 │ │ │ │ ├─alipay----------------------------支付宝PC支付插件 │ │ │ │ ├─alipay_app------------------------支付宝APP支付插件 │ │ │ │ ├─alipay_wap------------------------支付宝手机支付插件 │ │ │ │ ├─wxpay-----------------------------微信公众号支付插件 │ │ │ │ ├─wxapppay--------------------------微信APP支付插件 │ │ │ │ ├─wxnativepay-----------------------微信扫码支付插件 │ │ │ │ ├─wxmppay---------------------------微信小程序支付插件 │ │ │ │ ├─wxh5pay---------------------------微信H5端支付插件 │ │ │ │ ├─unionpay--------------------------中国银联支付插件 │ │ │ │ └─deposit---------------------------站内余额支付插件 │ │ │ ├─sms-----------------------------------短信插件目录 │ │ │ └─BasePlugin.php-------------------------插件基类 │ │ └─widgets-----------------------------------小部件类库 │ ├─console---------------------------------------控制台目录 │ │ ├─config------------------------------------配置文件 │ │ └─controllers-------------------------------模块控制器 │ ├─frontend--------------------------------------前台(PC)模块 │ │ ├─config------------------------------------配置文件 │ │ ├─controllers-------------------------------模块控制器 │ │ ├─languages---------------------------------语言包 │ │ ├─library-----------------------------------模块类库 │ │ ├─models------------------------------------业务层 │ │ ├─resource----------------------------------资源目录 │ │ ├─runtime-----------------------------------应用运行缓存文件 │ │ ├─widgets-----------------------------------PC端小挂件目录 │ │ └─web---------------------------------------Web部署目录(对外访问目录) │ │ └─assets--------------------------------静态资源发布目录 │ │ └─install-------------------------------程序安装目录(入口) │ │ └─templates-----------------------------模板(视图)文件目录 │ │ └─index.php------------------------------前台(PC)入口文件 │ ├─mobile----------------------------------------前台H5/WAP模块 │ │ ├─config------------------------------------配置文件 │ │ ├─controllers-------------------------------模块控制器 │ │ ├─languages---------------------------------语言包 │ │ ├─models------------------------------------业务层 │ │ ├─runtime-----------------------------------应用运行缓存文件 │ │ ├─widgets-----------------------------------H5端小挂件目录 │ │ └─web---------------------------------------Web部署目录(对外访问目录) │ │ └─assets--------------------------------静态资源发布目录 │ │ └─templates-----------------------------模板(视图)文件目录 │ │ └─index.php------------------------------前台(H5)入口文件 ├─composer.json--------------------------------------Composer配置文件 └─vendor-------------------------------------------第三方类库目录
Interprétation du répertoire
1. Répertoires sous le répertoire racine tels que : apiserverfrontendbackendmobile Nous l'appelons une application ou un site, et chaque application (site) contient son propre ensemble de structures MVC, accessibles en analysant différents noms de domaine. Mais veuillez ne pas résoudre le nom de domaine directement dans le répertoire de l'application. Au lieu de cela, résolvez-le dans le répertoire Web sous le répertoire de l'application. Seul ce répertoire est autorisé à accéder à l'extérieur pour garantir la sécurité de l'application (site).
2. Le répertoire commun sous le répertoire racine est un répertoire de fichiers publics de toutes les applications (sites) peuvent être placés dans ce répertoire pour faciliter les appels répétés.
3. Le fichier de configuration sous chaque application (site), c'est-à-dire le répertoire config, est le fichier de configuration de l'application, principalement la configuration : routage, chemin du contrôleur, vue, session, composant, etc., pas la base de données fichier de configuration de connexion, notre Le fichier de configuration de la base de données est : @shopwind/frontend/web/data/config.php Toutes les applications partagent ce fichier de configuration. Même plusieurs bases de données sont écrites dans ce fichier de configuration.
Fichier d'entrée
Le fichier d'entrée est également appelé script d'entrée. Le script d'entrée est la première étape du processus de démarrage d'une application (qu'il s'agisse d'une application Web ou d'une application console) n'a qu'un seul script d'entrée. Les demandes des utilisateurs finaux instancient l'application via le script d'entrée et transmettent la demande à l'application. Le script d'entrée de l'application web doit être placé dans un répertoire accessible aux utilisateurs finaux, généralement nommé index.php. L'exemple suivant est le chemin du fichier d'entrée de chaque application Web :
Fichier d'entrée du PC frontal
@shopwind/frontend/web/index.php
Fichier d'entrée back-end
@shopwind/backend/web /index.php
Documentation de développement
Lien vers la documentation de développement détaillée
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!