propz / release-parser
一个将场景发布名称解析成可读数据的库。
1.5.0
2024-06-02 00:00 UTC
Requires
- php: >=7.0
README
一个将场景发布名称解析成更简单、可重用数据的库。
喜欢它?我会感激您的支持 :)
描述
此库解析场景发布名称,并将数据分割成更小、更简单、更易读且因此更具可重用性的数据。
应用的规则主要基于研究现有的场景规则集合和其他来自PreDB的发布示例,因为许多发布名称并没有正确命名(尤其是较老的版本)。
方法是实现一个可以真正解析来自所有年代的各种场景发布的算法。主要的测试文件覆盖了一些更复杂名称。
说明
我假设您已经了解一些PHP,并且composer已经安装在您的计算机上。下一步是
› 使用composer安装库或者下载最新版本;
$ composer require propz/release-parser
› 将composer自动加载器文件包含到您的项目中:
require_once __DIR__ . '/vendor/autoload.php'
› 创建一个新的ReleaseParser类,并将发布名称和(可选的)发布部分(以更好地解析类型)作为参数传递;
› 您可以使用get()函数获取包含所有值的数组,或者只需使用get('name')定位特定的值
示例
<?php // Include main composer autoloader file ... require_once __DIR__ . '/vendor/autoload.php' // Create class $release = new \ReleaseParser\ReleaseParser( '24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed', 'tv' ); // See whats inside print_r( $release->get() ); => ( [release] => 24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed [title] => 24 [title_extra] => 9 00 Uhr bis 10 00 Uhr [group] => c0nFuSed [year] => [date] => [season] => 2 [episode] => 2 [disc] => [flags] => Array ( [0] => READNFO [1] => TV Dubbed ) [source] => DVDRip [format] => SVCD [resolution] => [audio] => [device] => [os] => [version] => [language] => Array ( [de] => German [multi] => Multilingual ) [type] => TV ) // Other examples echo $release->get( 'source' ); DVDRip echo $release->get( 'format' ); SVCD print_r( $release->get( 'flags' ) ); Array ( [0] => READNFO [1] => TV Dubbed )
发现任何错误吗?
如果您发现任何错误,请随时提交问题。
类似的项目和灵感
- pr0pz/scene-release-parser - 与此项目相同,但使用JavaScript
- matiassingers/scene-release (JavaScript)
- thcolin/scene-release-parser-php (PHP)
- majestixx/scene-release-parser-php-lib (PHP)
许可证
就是这样!
互相尊重。并且,尽情享受,伙计们!