経産省のサイトから「b2020_weight1j.xlsx」をダウンロードし、このエクセルシートの「2020_C01 (J1)」シートをClass & Collectionにしてみたが階層構造なのでXMLにしておくと便利かと考えた。
ExcelデータをXMLに変換するにはいろいろと正しい方法があると思う。スキーマを作ってXMLMAPSで追加するなど、、、。今回、XMLに変換する目的はサーバーでPHPで読み取って表示するというだけなので、以前から行っているように、スキーマなしでシンプルにテキストファイルを出力することで作成する。
ただし、この方法では、asciiで作成されるので、作成後メモ帳で読み込んで、UTF-8で上書き保存する。
参考までに、Class & Collectionをシートに展開したものをExcelのWeb保存でHTMLにしてみた。比較できる。
テキスト出力 VBA
Private Sub XmlCreate()
Dim tItems As colItems
Dim tItem As clsItem
Dim svLevel As Integer '前のデータのレベル
Set tItems = tManage.colItems
svLevel = 0
On Error Resume Next
Kill ActiveWorkbook.Path & "\iipxml.xml"
On Error GoTo 0
Open ActiveWorkbook.Path & "\iipxml.xml" For Output As #1
'XMLのヘッダー
Print #1, "<?xml version=""1.0"" encoding=""UTF-8""?>"
'ルート
Print #1, "<IIP>"
'
For Each tItem In tItems
With tItem
'Levelが同じ場合はLevel0以外では、まず、閉じタグを追加
If svLevel = .Level Then
Select Case .Level
Case Is = 0
Print #1, vbTab & "<Level0>"
Print #1, vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & "<Name>" & .Name & "</Name>"
Case Is = 1
Print #1, vbTab & vbTab & "</Level1>"
Print #1, vbTab & vbTab & "<Level1>"
Print #1, vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Case Is = 2
Print #1, vbTab & vbTab & vbTab & "</Level2>"
Print #1, vbTab & vbTab & vbTab & "<Level2>"
Print #1, vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Case Is = 3
Print #1, vbTab & vbTab & vbTab & vbTab & "</Level3>"
If .CountChildren > 0 Then
Print #1, vbTab & vbTab & vbTab & vbTab & "<Level3>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
End If
Case Is = 4
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "</Level4>"
'Level4で下位の階層がないものは対象からはずす
If .CountChildren > 0 Then
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Level4>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
End If
Case Is = 5
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level5>"
'Level5で下位の階層がある場合はLevel6があるのでId Nameのみ
If .CountChildren > 0 Then
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level5>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
'下位階層がない場合は、ウェイトなど出力
Else
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level5>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<参考分類>" & .RefCtg & "</参考分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<財分類>" & .FinancialCtg & "</財分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<用途分類>" & .PurposeCtg & "</用途分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<単位>" & .Unit & "</単位>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<生産weight>" & .ProductW & "</生産weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<出荷weight>" & .ShipW & "</出荷weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫weight>" & .InventoryW & "</在庫weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫率weight>" & .RationW & "</在庫率weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<親Id>" & .ParentId & "</親Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level>" & .Level & "</Level>"
End If
'Level6があれば出力
Case Else
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level6>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level6>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<参考分類>" & .RefCtg & "</参考分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<財分類>" & .FinancialCtg & "</財分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<用途分類>" & .PurposeCtg & "</用途分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<単位>" & .Unit & "</単位>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<生産weight>" & .ProductW & "</生産weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<出荷weight>" & .ShipW & "</出荷weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫weight>" & .InventoryW & "</在庫weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫率weight>" & .RationW & "</在庫率weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<親Id>" & .ParentId & "</親Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level>" & .Level & "</Level>"
End Select
'Levelが変更された場合は、前のLevelから対象となる階層分の閉じタグを追加。(4の次が2なら3も閉じる)
Else
Select Case .Level
Case Is = 1
Select Case svLevel
Case Is = 6
Print #1, vbTab & "</Level6></Level5></Level4></Level3></Level2></Level1>"
Case Is = 5
Print #1, vbTab & "</Level5></Level4></Level3></Level2></Level1>"
Case Is = 4
Print #1, vbTab & "</Level4></Level3></Level2></Level1>"
Case Is = 3
Print #1, vbTab & "</Level3></Level2></Level1>"
Case Is = 2
Print #1, vbTab & "</Level2></Level1>"
End Select
Print #1, vbTab & "<Level1>"
Print #1, vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & "<Name>" & .Name & "</Name>"
svLevel = .Level
Case Is = 2
Select Case svLevel
Case Is = 6
Print #1, vbTab & vbTab & "</Level6></Level5></Level4></Level3></Level2>"
Case Is = 5
Print #1, vbTab & vbTab & "</Level5></Level4></Level3></Level2>"
Case Is = 4
Print #1, vbTab & vbTab & "</Level4></Level3></Level2>"
Case Is = 3
Print #1, vbTab & vbTab & "</Level3></Level2>"
End Select
Print #1, vbTab & vbTab & "<Level2>"
Print #1, vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
svLevel = .Level
Case Is = 3
If .CountChildren > 0 Then
Select Case svLevel
Case Is = 6
Print #1, vbTab & vbTab & vbTab & "</Level6></Level5></Level4></Level3>"
Case Is = 5
Print #1, vbTab & vbTab & vbTab & "</Level5></Level4></Level3>"
Case Is = 4
Print #1, vbTab & vbTab & vbTab & "</Level4></Level3>"
Case Is = 1
Print #1, vbTab & vbTab & vbTab & "<Level2>"
End Select
Print #1, vbTab & vbTab & vbTab & "<Level3>"
Print #1, vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
svLevel = .Level
End If
Case Is = 4
If .CountChildren > 0 Then
Select Case svLevel
Case Is = 6
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "</Level6></Level5></Level4>"
Case Is = 5
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "</Level5></Level4>"
'2の次が4ならLevel3を追加する
Case Is = 2
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Level3>"
Case Is = 1
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Level2><Level3>"
End Select
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & "<Level4>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
svLevel = .Level
End If
Case Is = 5
If .CountChildren > 0 Then
Select Case svLevel
Case Is = 6
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level6></Level5>"
Case Is = 5
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level5>"
Case Is = 2
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level3><Level4>"
Case Is = 1
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level2><Level3><Level4>"
End Select
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level5>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Else
Select Case svLevel
Case Is = 6
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level6></Level5>"
Case Is = 5
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "</Level5>"
Case Is = 2
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level3><Level4>"
Case Is = 1
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level2><Level3><Level4>"
End Select
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level5>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<参考分類>" & .RefCtg & "</参考分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<財分類>" & .FinancialCtg & "</財分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<用途分類>" & .PurposeCtg & "</用途分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<単位>" & .Unit & "</単位>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<生産weight>" & .ProductW & "</生産weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<出荷weight>" & .ShipW & "</出荷weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫weight>" & .InventoryW & "</在庫weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫率weight>" & .RationW & "</在庫率weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<親Id>" & .ParentId & "</親Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level>" & .Level & "</Level>"
End If
svLevel = .Level
Case Else
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level6>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Id>" & .Id & "</Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Name>" & .Name & "</Name>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<参考分類>" & .RefCtg & "</参考分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<財分類>" & .FinancialCtg & "</財分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<用途分類>" & .PurposeCtg & "</用途分類>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<単位>" & .Unit & "</単位>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<生産weight>" & .ProductW & "</生産weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<出荷weight>" & .ShipW & "</出荷weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫weight>" & .InventoryW & "</在庫weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<在庫率weight>" & .RationW & "</在庫率weight>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<親Id>" & .ParentId & "</親Id>"
Print #1, vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "<Level>" & .Level & "</Level>"
svLevel = .Level
End Select
End If
End With
Next
'読み終わったら必要な閉じタグをセット
Select Case svLevel
Case Is = 6
Print #1, vbTab & "</Level6></Level5></Level4></Level3></Level2></Level1></Level0>"
Case Is = 5
Print #1, vbTab & "</Level5></Level4></Level3></Level2></Level1></Level0>"
Case Is = 4
Print #1, vbTab & "</Level4></Level3></Level2></Level1></Level0>"
Case Is = 3
Print #1, vbTab & "</Level3></Level2></Level1></Level0>"
Case Is = 2
Print #1, vbTab & "</Level2></Level1></Level0>"
End Select
'ルートタグを閉じる
Print #1, "</IIP>"
Close #1
End Sub
XML
<?xml version="1.0" encoding="UTF-8"?>
<IIP>
<Level0>
<Id>1000000000</Id>
<Name>鉱工業</Name>
<Level1>
<Id>1100000000</Id>
<Name>製造工業</Name>
<Level2>
<Id>1101000000</Id>
<Name>鉄鋼・非鉄金属工業</Name>
<Level3>
<Id>1101100000</Id>
<Name>鉄鋼業</Name>
<Level4>
<Id>1101101000</Id>
<Name>鉄鋼粗製品</Name>
<Level5>
<Id>1101101010</Id>
<Name>銑鉄</Name>
<参考分類></参考分類>
<財分類>鉱工業用生産財</財分類>
<用途分類></用途分類>
<単位>t</単位>
<生産weight>13.9</生産weight>
<出荷weight>6.3</出荷weight>
<在庫weight>21.3</在庫weight>
<在庫率weight>0</在庫率weight>
<親Id>1101101000</親Id>
<Level>5</Level>
</Level5>
<Level5>
<Id>1101101020</Id>
<Name>粗鋼</Name>
<参考分類></参考分類>
<財分類>鉱工業用生産財</財分類>
<用途分類></用途分類>
<単位>t</単位>
<生産weight>37</生産weight>
<出荷weight>0.2</出荷weight>
<在庫weight>16.2</在庫weight>
<在庫率weight>0</在庫率weight>
<親Id>1101101000</親Id>
<Level>5</Level>
</Level5>
-----
PHPで表示、クリックして展開するようにしたかったが、労力の割に面倒な感じなので、全件を出力し、別にLevel3までのリストを用意した。こちらのリスト3のIDをクリックすると、全件の該当項目の欄に移動することとした。
PHP
<!DOCTYPE html>
<html lang="ja">
<head>
<title>IT's AGENT IIPリスト</title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta content="ja" http-equiv="Content-Language">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta name="format-detection" content="telephone=no">
<meta name="description" content="IT's AGENT IIPリスト" />
<meta name="keywords" content="IT's AGENT IIPリスト" />
<meta name="author" content="IT's AGENT">
<meta charset="utf-8">
<meta name="viewport" content="target-densitydpi=device-dpi, width=device-width, initial-scale=1,user-scalable=yes">
<link rel="stylesheet" href="css/general.css">
</head>
<body>
<div class="title">IPI 2020_C01(J1) ALL</div>
<div id="contentsmaster">
<div id="centerpain">
<section>
<div class="boxcenter">
<article>
<div>
<div style="text-align:center;width:55rem;display:inline-block"></div>
<div style="text-align:center;width:14rem;display:inline-block">単位</div>
<div style="text-align:center;width:5rem;display:inline-block"></div>
<div style="text-align:right;width:10rem;display:inline-block">生産weight</div>
<div style="text-align:right;width:10rem;display:inline-block">出荷weight</div>
<div style="text-align:right;width:10rem;display:inline-block">在庫weight</div>
<div style="text-align:right;width:10rem;display:inline-block">在庫率weight</div>
</div>
<?php
$xml = "iipxml.xml";
$xmlData = simplexml_load_file($xml);
foreach ($xmlData->Level0 as $data) {
echo '<div class="level0"><div style="display:inline-block">' . trim($data->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data->Name) . '</div></div>';
foreach ($data->Level1 as $data1) {
echo '<div class="level1"><div style="display:inline-block">' . trim($data1->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data1->Name) . '</div></div>';
if ($data1->Level2) {
foreach ($data1->Level2 as $data2) {
echo '<div class="level2" id="' . trim($data2->Id) . '"><div style="display:inline-block">' . trim($data2->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data2->Name) . '</div></div>';
if ($data2->Level3) {
foreach ($data2->Level3 as $data3) {
if (trim($data3->Id) <> "") {
echo '<div class="level3" id="' . trim($data3->Id) . '"><div style="display:inline-block">' . trim($data3->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data3->Name) . '</div></div>';
} else {
echo '<div class="level3"><div style="display:inline-block">********</div><div style="display:inline-block;margin-left:2rem">********</div></div>';
}
if ($data3->Level4) {
foreach ($data3->Level4 as $data4) {
if (trim($data4->Id) <> "") {
echo '<div class="level4"><div style="display:inline-block">' . trim($data4->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data4->Name) . '</div></div>';
}
if ($data4->Level5) {
foreach ($data4->Level5 as $data5) {
if ($data5->Level6) {
echo '<div class="level5"><div style="display:inline-block">' . trim($data5->Id) . '</div><div style="display:inline-block;margin-left:2rem">' . trim($data5->Name) . '</div></div>';
foreach ($data5->Level6 as $data6) {
echo '<div class="level6"><div style="display:inline-block">' . trim($data6->Id) . '</div><div style="display:inline-block;;width:38rem;margin-left:2rem">' . trim($data6->Name) . '</div>';
echo '<div style="display:inline-block; width:14rem">' . trim($data6->単位) . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data6->生産weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data6->出荷weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data6->在庫weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data6->在庫率weight, 1, '.', '') . '</div></div>';
}
} else {
echo '<div class="level5"><div style="display:inline-block">' . trim($data5->Id) . '</div><div style="display:inline-block;width:40rem;margin-left:2rem">' . trim($data5->Name) . '</div>';
echo '<div style="display:inline-block; width:14rem">' . trim($data5->単位) . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data5->生産weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data5->出荷weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data5->在庫weight, 1, '.', '') . '</div>';
echo '<div style="display:inline-block; width:10rem;text-align:right">' . number_format((int)$data5->在庫率weight, 1, '.', '') . '</div></div>';
}
}
}
}
}
}
}
}
}
}
}
?>
</article>
</div>
</section>
</div>
</div>
</body>
</html>
CSS
html{
font-size: 62.5%;
}
body{
font-size: 14px;
font-size: 1.4rem;
background-color:white;
font-family:"游ゴシック Medium", "Yu Gothic Medium", 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
color: #000000;
-webkit-text-size-adjust: 100%;
}
a:link
{
color:slateblue;
text-decoration: underline blue;
box-shadow:1px 2px 6px 1px rgba(72,61,139,0.2);
padding-right:4px;
padding-right:0.4rem;
}
a:visited
{
color:navy;
text-decoration: underline dashed blueviolet;
}
a:hover
{
color: red;
box-shadow:1px 5px 10px 1px rgba(205,92,92,0.6);
text-decoration: underline wavy red;
border-radius:3px 3px 3px 3px ;
}
a:active
{
color: crimson;
text-decoration: none;
text-decoration: underline wavy red;
}
div.title{
text-align: center;
font-weight: 600;
font-size: xx-large;
}
div.boxcenter {
margin: 0px auto;
display: block;
width:95%;
margin-left:6px;
margin-right:6px;
margin-top:3px;
margin-bottom:3px;
margin-left:0.6rem;
margin-right:0.6rem;
margin-top:0.3rem;
margin-bottom:0.3rem;
border-bottom:2px solid lightslategray;
border-top:2px solid gainsboro;
border-left:1px solid lavender;
border-right:1px solid darkgray;
background-image:none;
background-color:white;
}
div.level0{
line-height:24px;
line-height:2.4rem;
background-color:gainsboro;
text-shadow:2px 2px 3px rgba(140,160,220,0.5);
color:#000000;
font-weight: 600;
vertical-align:top;
margin-left:2rem;
font-size: large;
}
div.level1{
line-height:24px;
line-height:2.4rem;
background-color:lightsteelblue;
text-shadow:2px 2px 3px rgba(140,160,220,0.5);
color:#000040;
font-weight: 600;
vertical-align:top;
margin-left:4rem;
font-size: larger;
}
div.level2{
line-height:24px;
line-height:2.4rem;
background-color:lavender;
text-shadow:2px 2px 3px rgba(140,160,220,0.5);
color:#000080;
font-weight: 600;
vertical-align:top;
margin-left:6rem;
}
div.level3{
line-height:24px;
line-height:2.4rem;
text-decoration: underline blue;
color:#0000f0;
font-weight: 600;
vertical-align:top;
margin-left:8rem;
}
div.level4{
line-height:24px;
line-height:2.4rem;
text-shadow:2px 2px 3px rgba(140,160,220,0.5);
color:#004f00;
font-weight: 600;
vertical-align:top;
margin-left:10rem;
}
div.level5{
line-height:24px;
line-height:2.4rem;
color:#030303;
font-weight: 300;
vertical-align:top;
margin-left:12rem;
}
div.level6{
line-height:24px;
line-height:2.4rem;
color:#0f0f0f;
font-weight: 300;
vertical-align:top;
margin-left:14rem;
}