本文整理汇总了PHP中ParserFactory::CanParse方法的典型用法代码示例。如果您正苦于以下问题:PHP ParserFactory::CanParse方法的具体用法?PHP ParserFactory::CanParse怎么用?PHP ParserFactory::CanParse使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParserFactory
的用法示例。
在下文中一共展示了ParserFactory::CanParse方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: try_mkdir
if (!$setting['enable']) {
return;
}
$cache_dir = CACHE_DIR . DIRECTORY_SEPARATOR . 'github_repo';
try_mkdir($cache_dir);
Hook::AddHook(Hook::FIND_POST_LIST, function (&$list) use($setting, $cache_dir) {
$files = array();
if (isset($setting['repos'])) {
foreach ($setting['repos'] as $repostring) {
$repo = new Repo($repostring);
$helper = new RepoHelper($repo);
$helper->setFileCacheDir($cache_dir);
try {
$tree = $helper->getTreeInPath();
$tree = array_filter($tree, function ($item) {
return $item['type'] === 'blob' && ParserFactory::CanParse($item['path']);
});
$files = array_merge($files, $helper->getAllLocalBlob($tree));
} catch (GitHubException $ex) {
throw $ex;
}
}
}
$list = array_merge($list, $files);
// 删除其余文件
$all = glob($cache_dir . DIRECTORY_SEPARATOR . '*');
$remove = array_diff($all, $files);
array_walk($remove, function ($fn) {
unlink($fn);
});
//var_dump($files,$all,$remove);