ozh/ bookmarkletgen
将JS转换为有效的书签链接的PHP类
1.2.2
2022-05-04 13:05 UTC
Requires
- php: >=7.2
README
将(可读的)JavaScript代码转换为书签链接
需要PHP 7.2 - 8.1
特性
- 移除注释
- 通过移除多余空格压缩代码,但不在字符串字面量内。示例
function someName( param ) { alert( "this is a string" ) }
将返回function%20someName(param){alert("this%20is%20a%20string")}
- 编码需要编码的内容
- 将代码包装成自调用的函数,以便书签使用
这基本上是对优秀的Bookmarklet Crunchinator的PHP端口进行了一点增强:http://ted.mielczarek.org/code/mozilla/bookmarklet.html
安装
如果你使用Composer,将此要求添加到你的composer.json
文件中并运行composer install
{ "require": { "ozh/bookmarkletgen": "1.2.0" } }
或者直接在命令行中: composer install ozh/bookmarkletgen
如果你不使用Composer,请下载类文件并手动包含它。
示例
<?php $javascript = <<<CODE var link="http://google.com/"; // destination window.location = link; CODE; require 'vendor/autoload.php'; // if you install using Composer require 'path/to/Bookmarkletgen.php'; // otherwise $book = new \Ozh\Bookmarkletgen\Bookmarkletgen; $link = $book->crunch( $javascript ); printf( '<a href="%s">bookmarklet</a>', $link );
将打印
<a href="javascript:(function()%7Bvar%20link%3D%22http%3A%2F%2Fgoogle.com%2F%22%3Bwindow.location%3Dlink%3B%7D)()%3B">bookmarklet</a>
测试
此库包含单元测试,以确保在各种PHP版本下生成的压缩JavaScript代码是有效的。
当前版本支持PHP 7.2+(之前的版本1.2.1已与PHP 5.3 - 7.1进行测试)
许可
你可以用它做任何你想做的事情