<?php
$MaintenanceCycleItemList_arr = array('キッチン', 'トイレ', '浴室', '洗面台', '水洗');
// 部屋番要一覧のSQLで作る
$array['部屋番号'][] = '0101';
$array['部屋番号'][] = '0102';
$array['部屋番号'][] = '0103';
$array['部屋番号'][] = '0104';
$array['部屋番号'][] = '0105';
$array['部屋番号'][] = '0401';
/* なぜか出来ない
if ( array_key_exists('0101', $array) ) {
} else {
$array['部屋番号'][] = '0101';
}
*/
// 工事コードと枝番が前のフィールドから変更になったら実行
$array['0101']['工事コード_枝番'][] = '0123456_01';
// 毎回実行
$array['0101']['0123456_01']['明細フィールド'][] = array('1', '1st暮らす キッチン STANDARD', '', 'キッチン', '1st暮らす', 'キッチン', 'キッチン', 'スタンダード', '', '1', '1500000', '1500000');
// キッチン等、該当の項目だった場合に実行
$array['0101']['●']['キッチン'] = '●';
// メインテーブルのフラグ的なやつ
$array['0101']['●'][] = 'キッチン';
// サブテーブルの明細表紙に記載する該当した項目名(カンマ区切り)
$array['0101']['0123456_01']['項目名'][] = 'キッチン';
$array['0101']['0123456_01']['明細フィールド'][] = array('2', '1st暮らす 浴室', 'ユニバーサル', '浴室', '1st暮らす', '浴室', '浴室', 'ユニバーサル', '', '1', '1480000', '1480000');
//$array['0101']['●']['浴室'] = '●';
$array['0101']['●'][] = '浴室';
$array['0101']['0123456_01']['項目名'][] = '浴室';
$array['0101']['0123456_01']['明細フィールド'][] = array('3', '', '', '', '', '', '', '', '', '', '', '');
$array['0101']['0123456_01']['明細フィールド'][] = array('4', '特別値引き', '端数値引き', '1', '-30000', '-30000');
$array['0101']['工事コード_枝番'][] = '0123456_02';
$array['0101']['0123456_02']['明細フィールド'][] = array('1', '1st暮らす トイレ', 'ベーシック', 'トイレ', '1st暮らす', 'トイレ', 'トイレ', 'ベーシック', '', '1', '300000', '300000');
//$array['0101']['●']['トイレ'] = '●';
$array['0101']['●'][] = 'トイレ';
$array['0101']['0123456_02']['項目名'][] = 'トイレ';
$array['0401']['工事コード_枝番'][]= '9999999_00';
$array['0401']['9999999_00']['明細フィールド'][] = array('1', '畳 表替', '大', '3', '5000', '15000');
//$array['0401']['●']['畳'] = '●';
$array['0401']['●'][] = '畳';
$array['0401']['9999999_00']['項目名'][] = '畳';
foreach ($array['部屋番号'] as $RoomNo) {
print '部屋番号: ' . $RoomNo . "\n";
//$RoomNo = '0101';
/*
foreach ($array[$RoomNo]['明細フィールド'] as $key) {
print '<tr>' . '<td>' . $key[0] . '</td>' . '<td>' . $key[1] . '</td>' . '</tr>' . "\n";
}
*/
// 部屋番号に該当する明細があれば
// 一次に部屋番号($RoomNo)があるか
if ( array_key_exists($RoomNo, $array) ) {
//$MaintenanceCycleItemList_arr
$buyList_arr = array();
//部屋番号($RoomNo)にある●を列挙
foreach ($array[$RoomNo]['●'] as $key1) {
$buyList_arr[] = $key1;
// ['●']['キッチン']等が存在するか
if ( array_key_exists($key1, $array[$RoomNo]['●']['キッチン'] ) ) {
print 'キッチンあったー!!!' . "/n";
}
}
print '--------------------------------------------------' . "\n";
print '該当商品名' . "\n";
print ' ' . implode(",", $buyList_arr) . "\n";
print '--------------------------------------------------' . "\n";
//部屋番号($RoomNo)にある工事コード_枝番を列挙
foreach ($array[$RoomNo]['工事コード_枝番'] as $key1) {
print '工事コード_枝番' . "\n";
print ' ' . $key1 . "\n";
// ['工事コード_枝番']が存在するか
if ( array_key_exists($key1, $array[$RoomNo] ) ) {
// print $key1 . 'には項目があったよ' . "\n";
$HitList_arr = array();
foreach ($array[$RoomNo][$key1]['項目名'] as $key2) {
$HitList_arr[] = $key2;
}
print 'ヒットした項目名' . "\n";
print ' ' . implode(",", $HitList_arr) . "\n";
print '明細' . "\n";
print '┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓' . "\n";
//部屋番号($RoomNo)にある明細フィールドを列挙
foreach ($array[$RoomNo][$key1]['明細フィールド'] as $key2) {
print '┃' . $key2[0] . ' | ' . $key2[1] . "\n";
/*
// ['明細フィールド']が存在するか
if ( array_key_exists($key1[0], $array[$RoomNo] ) ) {
print $key1[0] . 'には項目があったよ' . "\n";
foreach ($array[$RoomNo][$key1[0]] as $key2) {
print 'ヒットした明細:' . $key2[0] . "\n";
}
} else {
print $key1 . 'には項目名がないよ' . "\n";
}
*/
}
print '┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛' . "\n";
} else {
print $key1 . 'には項目名がないよ' . "\n";
}
}
/*
foreach ($array[$RoomNo]['明細フィールド']['項目名'] as $key) {
print '<tr>' . '<td>' . $key[0] . '</td>' . '<td>' . $key[1] . '</td>' . '</tr>' . "\n";
}
*/
} else {
// print_r($array);
print '┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓' . "\n";
print '┃ 該当明細はありませんでした。 ┃' . "\n";
print '┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛' . "\n";
}
}
//print_r($array);
?>
preferences:
55.13 ms | 402 KiB | 5 Q