teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

大規模改修

2016/04/11 23:49

投稿

miyabi-sun
miyabi-sun

スコア21459

answer CHANGED
@@ -1,4 +1,8 @@
1
- 再利用を考えると2と4は無しですね。
1
+ 再利用や綺麗さを考えるとどれもイマイチですね。
2
+ 1はDBというシステムと密結合、マイグレーションファイルで管理すればいいので△
3
+ 2はPHP言語と密結合、いろんな可能性を考えた時の最適解に近そうなので○
4
+ 3と4は保守し難いので論外…ただしコンパイル後としてはアリか?
5
+
2
6
  あるべき姿で考えてDBサーバーに突っ込むのが嫌なら、JSONやSQLiteを利用する案もあります。
3
7
 
4
8
  ```JSON
@@ -9,8 +13,8 @@
9
13
  }
10
14
  ```
11
15
 
12
- しかしJSONファイルデコードし始めるので速度はゴミでしょう。
16
+ しかしJSONファイルをPHPで都度読み込んでデコードし始める速度はあってないよなもの
13
- 速度を求めるなら自力でクイックソートのコードを書いたりするのもありそうです。
17
+ 速度を求めるなら自力でクイックソートのコードを書いたりする必要がありそうです。
14
18
 
15
19
  速度と綺麗さを求めるのであれば、コンパイル用のNode.jsバッチを作成して…
16
20
  JSONファイルから下記のようなPHPコードに変換してみてはいかがでしょう?
@@ -25,4 +29,17 @@
25
29
  $index = 0; // クイックソートでindexを探す
26
30
  return $langs[$index];
27
31
  }
28
- ```
32
+ ```
33
+
34
+ ---
35
+
36
+ ひらめきました。
37
+
38
+ ```PHP
39
+ function lang() {
40
+ return 'アラビア語';
41
+ }
42
+ ```
43
+
44
+ config/langディレクトリの中に`ar.php`のようなファイルを生成して、includeで呼び出せばいいのです。
45
+ 1回きりの処理なら間違いなしで最速です。