<?php
function getDirContents($dir, &$results = array()) {
$files = scandir($dir);
foreach ($files as $key => $value) {
$path = realpath($dir . DIRECTORY_SEPARATOR . $value);
if (!is_dir($path)) {
$results[] = $path;
} else if ($value != "." && $value != "..") {
getDirContents($path, $results);
}
}
return $results;
}
$list = getDirContents(__DIR__.'/src');
$res = array();
foreach($list as $current) {
$cleanName = str_replace(__DIR__, '', $current);
$res[] = array(
'path' => $cleanName,
'hash' => hashThatFile($current),
);
}
print_r($res);
function hashThatFile($path) {
$contents = file_get_contents($path);
$contents = str_replace("\r", '', $contents);
return hash('sha256', $contents);
}