waynestate / parse-youtube-id
从YouTube URL中解析视频ID
1.0.0
2018-03-14 12:14 UTC
Requires
- php: >=7.0
Requires (Dev)
- phpunit/phpunit: ^6
This package is auto-updated.
Last update: 2024-09-08 08:15:28 UTC
README
给定一个YouTube视频URL,解析出视频ID。
使用方法
通过composer安装包
composer require waynestate/parse-youtube-id
解析完整的YouTube URL
use Waynestate\Youtube\ParseId; ... $youtube_id = ParseId::fromUrl('https://www.youtube.com/watch?v=yCjTG0rOIXQ'); echo $youtube_id; // 'yCjTG0rOIXQ'
解析简短的YouTube URL
$youtube_id = ParseId::fromUrl('https://youtu.be/yCjTG0rOIXQ'); echo $youtube_id; // 'yCjTG0rOIXQ'
空字符串或非YouTube URL返回空字符串
$youtube_id = ParseId::fromUrl(''); echo $youtube_id; // ''
有关所有支持的URL变体的详细信息,请参阅/tests/UrlParseTest.php
。
正则表达式
$pattern = '#^(?:https?://|//)?' # Optional URL scheme. Either http, or https, or protocol-relative. . '(?:www\.|m\.)?' # Optional www or m subdomain. . '(?:' # Group host alternatives: . 'youtu\.be/' # Either youtu.be, . '|youtube\.com/' # or youtube.com . '(?:' # Group path alternatives: . 'embed/' # Either /embed/, . '|v/' # or /v/, . '|watch\?v=' # or /watch?v=, . '|watch\?.+&v=' # or /watch?other_param&v= . ')' # End path alternatives. . ')' # End host alternatives. . '([\w-]{11})' # 11 characters (Length of Youtube video ids). . '(?![\w-])#'; # Rejects if overlong id.
测试
composer test
贡献
有关详细信息,请参阅CONTRIBUTING.md。
致谢
改编自Stephan Schmitz在https://3v4l.org/GEDT0的作品
关于
韦恩州立大学(WSU)是一所位于密歇根州底特律的都市公立研究型大学。