php asset
v2.0.3

翻译:Español
用于处理HTML链接和脚本的PHP库。
操作系统:Linux |视窗。
PHP版本:8.1 | 8.2。
安装此扩展程序的首选方法是通过作曲家。
要安装PHP资产库,只需:
composer require josantonius/asset如果您希望下载可以使用的整个源代码:
composer require josantonius/asset --prefer-source您也可以用git克隆完整的存储库:
git clone https://github.com/josantonius/php-asset.git JosantoniusAssetAsset
为身体打印添加的脚本:
public function outputBodyScripts(): string ;打印为头部的添加脚本:
public function outputHeadScripts(): string ;打印添加的链接:
public function outputLinks(): string ;JosantoniusAssetFacadesAsset
添加身体脚本:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
*/
public static function addBodyScript(
null | bool $ async = null ,
null | string $ crossorigin = null ,
null | bool $ defer = null ,
null | string $ fetchpriority = null ,
null | string $ integrity = null ,
null | bool $ nomodule = null ,
null | string $ nonce = null ,
null | string $ referrerpolicy = null ,
null | string $ src = null ,
null | string $ type = null
): BodyScript ;添加头部脚本:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
*/
public static function addHeadScript(
null | bool $ async = null ,
null | string $ crossorigin = null ,
null | bool $ defer = null ,
null | string $ fetchpriority = null ,
null | string $ integrity = null ,
null | bool $ nomodule = null ,
null | string $ nonce = null ,
null | string $ referrerpolicy = null ,
null | string $ src = null ,
null | string $ type = null
): HeadScript ;添加链接:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link
*/
public static function addLink(
null | string $ as = null ,
null | string $ crossorigin = null ,
null | bool $ disabled = null ,
null | string $ fetchpriority = null ,
null | string $ href = null ,
null | string $ hreflang = null ,
null | string $ imagesizes = null ,
null | string $ imagesrcset = null ,
null | string $ integrity = null ,
null | string $ media = null ,
null | string $ prefetch = null ,
null | string $ referrerpolicy = null ,
null | string $ rel = null ,
null | string $ sizes = null ,
null | string $ target = null ,
null | string $ title = null ,
null | string $ type = null ,
): Link ;为身体打印添加的脚本:
public static function outputBodyScripts(): string ;打印为头部的添加脚本:
public static function outputHeadScripts(): string ;打印添加的链接:
public static function outputLinks(): string ;JosantoniusAssetElementsBodyScript
添加身体脚本:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
*/
public function __construct(
private null | bool $ async = null ,
private null | string $ crossorigin = null ,
private null | bool $ defer = null ,
private null | string $ fetchpriority = null ,
private null | string $ integrity = null ,
private null | bool $ nomodule = null ,
private null | string $ nonce = null ,
private null | string $ referrerpolicy = null ,
private null | string $ src = null ,
private null | string $ type = null
);JosantoniusAssetElementsHeadScript
添加头部脚本:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
*/
public function __construct(
private null | bool $ async = null ,
private null | string $ crossorigin = null ,
private null | bool $ defer = null ,
private null | string $ fetchpriority = null ,
private null | string $ integrity = null ,
private null | bool $ nomodule = null ,
private null | string $ nonce = null ,
private null | string $ referrerpolicy = null ,
private null | string $ src = null ,
private null | string $ type = null
);JosantoniusAssetElementsLink
添加链接:
/**
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link
*/
public function __construct(
private null | string $ as = null ,
private null | string $ crossorigin = null ,
private null | bool $ disabled = null ,
private null | string $ fetchpriority = null ,
private null | string $ href = null ,
private null | string $ hreflang = null ,
private null | string $ imagesizes = null ,
private null | string $ imagesrcset = null ,
private null | string $ integrity = null ,
private null | string $ media = null ,
private null | string $ prefetch = null ,
private null | string $ referrerpolicy = null ,
private null | string $ rel = null ,
private null | string $ sizes = null ,
private null | string $ target = null ,
private null | string $ title = null ,
private null | string $ type = null ,
);此库的使用示例:
use Josantonius Asset Elements BodyScript ;
new BodyScript (
src: ' https://example.com/script.js '
); use Josantonius Asset Facades Asset ;
Asset:: addBodyScript (
src: ' script.js ' ,
type: ' text/javascript '
); use Josantonius Asset Elements HeadScript ;
new HeadScript (
src: ' script.js ' ,
type: ' module '
); use Josantonius Asset Facades Asset ;
Asset:: addHeadScript (
crossorigin: ' anonymous ' ,
defer: true ,
integrity: ' sha256-n9+ ' ,
src: ' https://example.com/script.js ' ,
type: ' text/javascript '
); use Josantonius Asset Elements Link ;
new Link (
crossorigin: ' anonymous ' ,
href: ' https://example.com/style.css ' ,
integrity: ' sha256-n9+ ' ,
media: ' all ' ,
rel: ' stylesheet '
); use Josantonius Asset Facades Asset ;
Asset:: addLink (
href: ' https://example.com/style.css ' ,
rel: ' stylesheet '
); use Josantonius Asset Asset ;
$ asset = new Asset ();
echo $ asset -> outputBodyScripts (); use Josantonius Asset Facades Asset ;
echo Asset:: outputBodyScripts (); use Josantonius Asset Asset ;
$ asset = new Asset ();
echo $ asset -> outputHeadScripts (); use Josantonius Asset Facades Asset ;
echo Asset:: outputHeadScripts (); use Josantonius Asset Asset ;
$ asset = new Asset ();
echo $ asset -> outputLinks (); use Josantonius Asset Facades Asset ;
echo Asset:: outputLinks ();index.php
use Josantonius Asset Elements Link ;
use Josantonius Asset Elements BodyScript ;
use Josantonius Asset Elements HeadScript ;
new BodyScript (src: ' foo.js ' , async: true );
new BodyScript (src: ' bar.js ' , type: ' text/javascript ' );
new HeadScript (src: ' https://example.com/foo.js ' , type: ' module ' );
new HeadScript (src: ' https://example.com/bar.js ' , defer: true );
new Link (href: ' https://example.com/foo.css ' , rel: ' stylesheet ' );
new Link (href: ' https://example.com/bar.css ' , rel: ' stylesheet ' , media: ' all ' ); page.html
< ?php
use JosantoniusAssetAsset;
$asset = new Asset();
? >
< html >
< head >
< ?= $asset- > outputLinks() ? >
< ?= $asset- > outputHeadScripts() ? >
</ head >
< body >
< ?= $asset- > outputBodyScripts() ? >
</ body >
</ html >结果:
< html >
< head >
< link href =" https://example.com/foo.css " rel =" stylesheet " >
< link href =" https://example.com/bar.css " rel =" stylesheet " media =" all " >
< script src =" https://example.com/foo.js " type =" module " > </ script >
< script defer src =" https://example.com/bar.js " > </ script >
</ head >
< body >
< script async src =" foo.js " > </ script >
< script src =" bar.js " type =" text/javascript " > </ script >
</ body >
</ html >index.php
use Josantonius Asset Facades Asset ;
Asset:: addBodyScript (src: ' foo.js ' , async: true );
Asset:: addBodyScript (src: ' bar.js ' , type: ' text/javascript ' );
Asset:: addHeadScript (src: ' https://example.com/foo.js ' , type: ' module ' );
Asset:: addHeadScript (src: ' https://example.com/bar.js ' , defer: true );
Asset:: addLink (href: ' https://example.com/foo.css ' , rel: ' stylesheet ' );
Asset:: addLink (href: ' https://example.com/bar.css ' , rel: ' stylesheet ' , media: ' all ' ); page.html
< ?php
use JosantoniusAssetFacadesAsset;
? >
< html >
< head >
< ?= Asset::outputLinks() ? >
< ?= Asset::outputHeadScripts() ? >
</ head >
< body >
< ?= Asset::outputBodyScripts() ? >
</ body >
</ html >结果:
< html >
< head >
< link href =" https://example.com/foo.css " rel =" stylesheet " >
< link href =" https://example.com/bar.css " rel =" stylesheet " media =" all " >
< script src =" https://example.com/foo.js " type =" module " > </ script >
< script defer src =" https://example.com/bar.js " > </ script >
</ head >
< body >
< script async src =" foo.js " > </ script >
< script src =" bar.js " type =" text/javascript " > </ script >
</ body >
</ html > 要运行测试,您只需要作曲家并执行以下操作:
git clone https://github.com/josantonius/php-asset.git cd php-asset composer install使用phpunit进行单元测试:
composer phpunit使用PHPC运行代码标准测试:
composer phpcs运行PHP MESS探测器测试以检测代码样式的不一致之处:
composer phpmd运行所有以前的测试:
composer tests <script>标签之间添加代码每个版本的详细更改记录在发行说明中。
请确保在提出拉动请求之前,开始讨论或报告问题之前,请确保阅读贡献指南。
感谢所有贡献者! ❤️
如果该项目可以帮助您减少开发时间,您可以赞助我以支持我的开源工作?
该存储库是根据MIT许可证获得许可的。
版权所有©2016-Present,Josantonius