pyrsmk / longuevue
0.1.6
2016-05-26 17:42 UTC
Requires
- php: >=5.4.0
README
LongueVue 现已不再维护。如果您正在寻找网页爬虫,请使用 Goutte。如果您正在寻找路由器,请查看 FastRoute。
LongueVue 是基于 preg_match()
构建的内容提取器。具体来说,您可以从任何地方提取任何字符串内容,例如从某些博客中发现文章以创建 RSS 流等。
安装
获取源代码或使用 Composer 安装
composer require pyrsmk/longuevue
匹配和提取
模式是一个带有 {var}
变量的链。如果链匹配,则提取值
$longuevue=new LongueVue('/articles/{id}/comments'); // Will return false $longuevue->match('/articles'); // Will return false too $longuevue->match('/articles//comments'); // Will return array('id'=>'72') $longuevue->match('/articles/72/comments'); // Will return array() $longuevue->match('/articles//comments');
验证器
您可以为特定值向引擎添加验证器。如果该值不匹配正则表达式验证器,则整个链将完全不匹配。
$longuevue=new LongueVue('/articles/{id}/comments'); $longuevue->addValidator('id','\d+'); // Match $longuevue->match('/articles/72/comments'); // Won't match $longuevue->match('/articles/some_article/comments');
默认值
此外,如果链可能缺少某些值,您还可以声明默认值
$longuevue=new LongueVue('/articles/{id}/comments'); $longuevue->addDefaultValue('id','1'); // Will return array('id'=>'72') $longuevue->match('/articles/72/comments'); // Will return array('id'=>'1') $longuevue->match('/articles//comments');
许可
LongueVue 在 MIT 许可证 下发布。