我是相当新的PHP和正则表达式,我已经走到这一步试图了解如何提取正确的信息读取后,将PHP的preg_match和正则表达式
的样本数据
2011/09/20 00:57 367,044,608 S1E04 - Cancer Man.avi
2012/03/12 03:01 366,991,496 Family Guy - S09E01 - And Then There Were Fewer.avi
2012/03/25 00:27 53,560,510 Avatar- The Legend of Korra S01E01.avi
我会喜欢提取文件的日期,文件大小和名称,记住文件可以基本上以任何东西开始。并且文件大小一直在变化。
我目前有什么。
$dateModifyed = substr($file, 0, 10);
$fileSize = preg_match('[0-9]*/[0-9]*/[0-9]*/s[0-9]*:[0-9]*/s*', $file, $match)
$FileName =
的完整代码我在
function recursivePrint($folder, $subFolders, $Jsoncounter) {
$f = fopen("file.json", "a");
echo '{ "id" : "' . $GLOBALS['Jsoncounter'] . '", parent" : "' . "#" . '", Text" : "' . $folder . '" },' . "\n";
$PrintString = '{ "id" : "' . $GLOBALS['Jsoncounter'] . '", parent" : "' . "#" . '", Text" : "' . $folder . '" },' . "\n";
fwrite($f, $PrintString);
$foldercount = $GLOBALS['Jsoncounter'];
$GLOBALS['Jsoncounter']++;
foreach($subFolders->files as $file) {
preg_match('/^(\d{4}/\d{2}/\d{2}\s+\d{2}:\d{2})\s+([\d,]+)\s+(.*)$/', $file, $match);
$dateModified = $match[1];
$fileSize = str_replace(',', '', $match[2]);
$fileName = $match[3];
echo $dateModified . $fileSize . $fileName;
echo '{ "id" : "' . $GLOBALS['Jsoncounter'] . '", parent" : "' . $foldercount . '", Text" : "' . $file . '" },';
$PrintString ='{ "id" : "' . $GLOBALS['Jsoncounter'] . '", parent" : "' . $foldercount . '", Text" : "' . $file . '" },';
fwrite($f, $PrintString);
$GLOBALS['Jsoncounter']++;
}
foreach($subFolders->folders as $folder => $subSubFolders) {
recursivePrint($folder, $subSubFolders, $Jsoncounter);
}
fclose($f);
}
任何帮助工作提取正确的数字,将不胜感激
您的数据如何在您的PHP文件中访问?它保存在一个变量中吗?请发布完整的相关代码。 – Ejaz
感谢您的回复,我已经添加了我正在工作的全部功能 – user3622769