テキスト ファイルに保存されたデータから多くのテーブルを生成するプロジェクトに取り組んでいます。
とにかく、コードを次のようにしたい..
function Phone($arg){
....
return $phone_nr
}
function Adress($arg){
....
return $adress_nr
}
function Arr_push($args) {
for ($i = 1; $i < func_num_args(); $i++) {
$keys[$i - 1] = func_get_arg($i);
}
foreach ($keys as $key) {
$arr_return[] = $key;
}
return $arr_return;
}
$Table1[] = Arr_push($DB,'Name:', 'John', 'Gender:', 'male');
$Table1[] = Arr_push($DB,'phone:', Phone('John'), 'Address', Adress('John'));
$table = new TableClass();
$table->show($Table1);
($DB is the database a 2d array with keys and values)
これはできますか?それとも、これのためにある種のパーサーを書く必要がありますか
"Parser method"
$Table1[] = Arr_push('phone:', '^phone,John', 'Address', ^adress,John');
in Arr_push function check if the string start with a '^'. In that case explode
it on the delimiter ',' and have switch loop for the different cases.
私はこれを数日間探していたので、質問をしなければなりません。
情報を拡張します...
ファイルは次のようになります...
1 2 PRD~1 3 ISO 8859-1~1 4 0 ~2 1 Rundvirke Skog~2 2 VIRK1209.APT~3 1 311214~3 2 000000~3 3 1 ~803 4 311214~3 5 バルメット~3 6 911.3~ 3 7 .........
ひどい正規表現で管理しました:
%((\d{1,}\s?)+(?=~))|(((\d{1,}\s\d{1,})\s?\r?\n)(^(\w|\s|[å-ö]|[Å-Ö]|,|\.|
\?|-|\?|@|\*|/)+))%mx
このように2次元配列に読み込みます...
[Var_id] [Type] [Data]
1 4 0
1 3 ISO 8859-1
1 2 PRD
2 2 VIRK1209.APT
2 1 Rundvirke Skog
3 6 911.3
3 7 Valmet
3 8 360.1/360.2
3 5 Valmet
3 3 1
3 2 000000
.....
必要な出力は、例のデータを含むテーブルです
| Machine | Valmet | Type | 911.3
| ...... | ......
データ (Valmet および 911.3) は、その [Var_id] および [Type] によって呼び出されます。
したがって、これらのテーブルを作成するときは、「クリーンな」コードがあればいいでしょう
$array[] = arr_push($DB, 'Produktion:', '', 'Apteringsinstruktion:', '');
$array[] = arr_push($DB, 'FilNamn:', '^get, 1, 2', 'Filnamn:', '^get, 2, 2');
$array[] = arr_push($DB, 'Nollställ datum:', '^get, 11, 4', 'Indetitetsuppgifter', '^get, 2, 1');
$array[] = arr_push($DB, 'Lagrind datum:', '^get, 12, 4', 'Skapat datum:', '^get, 13, 4');
display_table($array);
How the input looks like now with the "parser" method.
この '^get,var_id,type' パーサーを代わりに関数呼び出しに置き換える方法はありますか?
StandforD 標準の詳細については、http ://www.skogforsk.se/en/About-skogforsk/Collaboration-groups/StanForD/ を参照してください。
[var_id] [type] を説明するファイルの詳細: http://www.skogforsk.se/PageFiles/60712/AllVarNo_ENG_120418.pdf。
背景: Harvester は、すべての木材、ボリューム、時間などを含む prd ファイルを作成しています。市場には、そのための無料のビューアーはありません (私が知っていること)。だから私はPHPでprdビューアをやっています。
これをホストする場所がわからないので、バックエンドとして SQL サーバーは必要ありません。