resources/views/admin/inc/disk_info.blade.php
@php
$d = `df -hT`;
$d_array = preg_split("/\n/",$d);
$disk_info = $d_array[0];
$disk_info = preg_replace("/Mounted on/","MountedOn",$disk_info);
$disk_info = preg_replace("/\s+/"," ",$disk_info);
$disk_headers = preg_split("/\s/",$disk_info);
$disk_data = [];
foreach ($d_array as $k => $v) {
if ( preg_match("{/$}",$v) ) {
$v = preg_replace("/\s+/"," ",$v);
$v = preg_replace("{ /$}","",$v);
$disk_data_array = preg_split("/\s/",$v);
array_push($disk_data,$disk_data_array);
}
}
// dd( $disk_data );
echo "<table class='table table-striped table-bordered table-condensed' style='max-width:400px;'>\n";
// 1. ヘッダ
echo "<tr>\n";
foreach ($disk_headers as $v) {
if ( strcmp($v, 'MountedOn') == 0 ){ continue; }
if ( strcmp($v, 'Avail') == 0 ){ $v = "残り容量"; }
echo "<th>{$v}</th>";
}
echo "</tr>\n";
// 2. データ
echo "<tr>\n";
foreach ($disk_data as $row) {
foreach ($row as $v) {
echo "<td>{$v}</td>";
}
}
echo "</tr>\n";
echo "</table>\n";
@endphp
他のBladeから呼び出します
@include('admin.inc.disk_info')