propz/release-parser

一个将场景发布名称解析成可读数据的库。

1.5.0 2024-06-02 00:00 UTC

This package is auto-updated.

Last update: 2024-09-02 16:57:32 UTC


README

Made with PHP Packagist package version Minimum PHP version: 7.0.0

一个将场景发布名称解析成更简单、可重用数据的库。

喜欢它?我会感激您的支持 :)

Follow on Twitter Watch on Twitch Join on Discord Donate on Ko-Fi

描述

此库解析场景发布名称,并将数据分割成更小、更简单、更易读且因此更具可重用性的数据。

应用的规则主要基于研究现有的场景规则集合和其他来自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
)

发现任何错误吗?

如果您发现任何错误,请随时提交问题

类似的项目和灵感

许可证

License: MIT

就是这样!

互相尊重。并且,尽情享受,伙计们!