使用公共资产为Composer创建PHP库
我正在为客户端创建模板库。该库的目标是为该公司拥有的所有网站提供一个标准化的外壳。其他开发人员应能够使用Composer导入库,并使用几行代码创建基本模板,例如:使用公共资产为Composer创建PHP库,php,repository,composer-php,Php,Repository,Composer Php,我正在为客户端创建模板库。该库的目标是为该公司拥有的所有网站提供一个标准化的外壳。其他开发人员应能够使用Composer导入库,并使用几行代码创建基本模板,例如: $Template = new Template; $Template->setContent('Hello world!'); $Template->render(); 这将呈现标准化shell中的内容。这是一个简化的示例,该库提供了更多功能,如标准化的滑块、菜单等 这个库依赖于细枝,但它也依赖于一堆前端资产;像自定义
$Template = new Template;
$Template->setContent('Hello world!');
$Template->render();
这将呈现标准化shell中的内容。这是一个简化的示例,该库提供了更多功能,如标准化的滑块、菜单等
这个库依赖于细枝,但它也依赖于一堆前端资产;像自定义图像、javascripts、css和第三方的东西,比如Jquery和Bootstrap css。这些资产存储在/assets/文件夹中
使用Composer安装库之后,所有内容都存储在/vendors/文件夹中,该文件夹位于网站的根目录中。但是/assets/文件夹需要在/public\u html/中才能访问
目前的解决方案是:只需将/assets/文件夹复制到/public_html/。但我确信,依赖于前端资产的存储库会更多,在/public\u html/?中使用这些资产的最常见方法是什么?我想到的是Symfony2捆绑系统。您定义的每个捆绑包都必须在AppKernel中注册。如果捆绑包包含将在/web/bundles/short\u bundle\u name/文件夹下链接或复制的资产 因此,为了能够跟踪依赖项的资产,您需要某种注册机制,这样您就可以注册哪些libs有需要复制/链接到public_html文件夹下的资产
也可以考虑使用ASSET处理你的纯资产(合并、重写和其他过滤器),缓存缓存功能。
< P>你可以使用<代码>作曲家<代码>的后端依赖性和<代码> Bower <代码>为你的前端,和<代码> Grutt<代码>移动和处理文件。 使用Composer
可以将以下内容添加到Composer.json
"scripts": {
"post-install-cmd": [
"bower install",
"grunt"
],
"post-update-cmd": [
"bower install",
"grunt"
]
}
{
"name": "my/project",
"dependencies": {
"jquery": "*",
"bootstrap": "*"
}
}
然后就是基本的Bower
scriptbowser.json
"scripts": {
"post-install-cmd": [
"bower install",
"grunt"
],
"post-update-cmd": [
"bower install",
"grunt"
]
}
{
"name": "my/project",
"dependencies": {
"jquery": "*",
"bootstrap": "*"
}
}
然后是basicGrunt
scriptgruntfile.js
,您可以这样使用它()
现在,您只需运行composer命令即可安装或更新所有文件
注意:如果您的所有资产都在Composer