Comments (18)
#328 相似,希望新版本可以下优化组件+应用 结构
from webman.
之前版本是不重复的,helpers.php,start.php, windows.php,bootstrap.php只放在应用目录里,但是升级会遇到麻烦。
用户更新了webman-framework,但是没办法更新应用里的 helpers.php,start.php, windows.php,bootstrap.php,导致无法启动。
后面将这四个文件放到了webman-framework,更新后脚本会自动替换应用目录里对应的4个文件,达到webman-framework 和 应用里的文件同步更新。
from webman.
之前版本是不重复的,helpers.php,start.php, windows.php,bootstrap.php只放在应用目录里,但是升级会遇到麻烦。 用户更新了webman-framework,但是没办法更新应用里的 helpers.php,start.php, windows.php,bootstrap.php,导致无法启动。
后面将这四个文件放到了webman-framework,更新后脚本会自动替换应用目录里对应的4个文件,达到webman-framework 和 应用里的文件同步更新。
表示理解了,能否将这些非必需加载的文件放置到其他目录,并不以 .php 后缀结束。IDE 提示代码大量重复。
from webman.
什么编辑器?哪里提示代码重复请截图下
from webman.
from webman.
from webman.
from webman.
感谢反馈,后面版本里加一个删除就好了
from webman.
删除可以解决IDE解析提示,但直接阅读核心源代码还是容易误导,上面是我提的建议
准备从 ThinkPHP 转 Webman,期望有点高,希望大佬不要见怪哈。
from webman.
如果换后缀了,IDE没办法智能提示,查看及编码也不方便,可能还有人会问为啥有个xx后缀的文件,为什么不用php后缀。。。太难了
from webman.
众口难调,积累了这么久了,要不发个大版本吧 !
from webman.
你是说哪个特性需要发大版本?
from webman.
- 启动入口脚本及核心函数组件化,由 composer 管理+初始化配置,其他配置及自定义扩展由应用目录管理。
- 核心注释 DOC 标准化,更友好的支持 IDE 提示,目前源码大部没有方法注释描述。
- 使用 php 强类型,为后续高版本php标准做准备,提升代码执行效率,标准化形参类型。
- 更新框架核心时不影响应用目录,简化应用配置+减轻部署成本。
- 增加服务或中间键 composer 注入,实现 composer 组件插件化。(目前代码有做检测依赖 class 是否存在,如 env 配置)
from webman.
234好理解,1 5 具体是什么意思?
from webman.
- 目前应用框架的启动脚本及常用函数是放置于 app 同级目录,用户可随意修改。核心升级管理这些零散的文件不方便,如果用户对其进行了修改,则可能会替换掉。建议核心脚本及核心函数放置于 composer 内部管理,用户需要增加函数,可以自行扩展。
- 使用 composer 进行安装或下载组件时,可根据 组件的 composer.json 配置进行自动配置,并存放于 vendor/*.php 或其他目录,比如我的组件有一个中间件,只需要在 composer.json 定义的中间键入口,通过 composer 安装时,会自动生成配置,应用启动时加载对应配置并启用。
from webman.
通常核心部分是不允许用户修改的,用户只需要 配置+扩展+业务!
from webman.
启动脚本可以进行封装,如果用户需要扩展或修改,可以继承类再调用初始化。
如:start.php 只需要 include 进来,再调 start.
from webman.
通过 composer 安装时,会自动生成配置,应用启动时加载对应配置并启用
这个目前是支持的,基础插件安装就是这么做的。
启动脚本可以按照你的思路优化下。非常感谢你的建议。
from webman.
Related Issues (20)
- upload files emptily,the framework do not encapsulate exceptions
- 无法获取完整协议的URL
- PHP 8.2 support HOT 3
- How to alternative sleep function in API webman HOT 1
- 如何在 DB 查询构造器的 chunkMap 方法里使用翻译文件,来翻译数组? HOT 1
- composer update 会将自己在 helpers.php 里写的函数覆盖没.... HOT 4
- 助手函数helpers.php 中locale方法在设置 $locale时应该是无返回的
- 数据库正确的配置,但是提示用户名密码错误,不应该啊?
- upload in host HOT 3
- workerman v5 要出了吗?同步调用传参很需要呀、 HOT 2
- PHP8 下由于 psr/container 安装数据库扩展失败的问题 HOT 5
- 在日志文件不可写的情况下,会把完整的异常信息发送至客户端 HOT 1
- 为什么我webman写的接收图片接口 接收20M图片要 20秒 我PHP原生写的接收图片只要6秒 HOT 2
- Binary packaging compatibility with ARM HOT 1
- unable to install HOT 1
- How to Configure Session for Multiple Applications? HOT 2
- 建议排除abstract类
- 内存监控任务 在windows下 无法调用posix_getppid 的错误问题 HOT 1
- composer require 报错 HOT 2
- Need Help Getting Browser-Detect or Mobile-Detect to Work with Webman HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webman.