人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPでのWebアプリ構築における以下の質問にご回答ください。個人的意見でも差し支えありません。
なお、ZendやPEARのコーディング規約は目を通しています。

1.インデックスと各画面表示をファイルとして切り分けていますか?例えば常にindex.phpにアクセスさせ、引数を使って表示分けいう方法があります。一方、index.phpへのにアクセスは最初だけで、後は個別ページごとのPHPファイルを参照する方法もあります。
2.前述の構成が「ブートファイルへ常にアクセス」の場合、index.phpにはどこまでの処理を含めますか?例えば、セッション処理や画面生成処理などの常時処理を、処理ごとに別ファイルに切り分けてrequire_onceする方法があると思います。一方、共通処理は直接index.php内に記述する考え方もあると思います。
3.クラスはどこに、どのような名称のファイル名及びディレクトリ名で置きますか?また、どのようなディレクトリ名で格納しますか?
4.関数はそれぞれ別ファイルとせず、1ファイルにまとめることが多いような気がしますが、あなたはどうしていますか?
5.その他、参考となるようなことを教えてください。標準やコーディング規約のご紹介を歓迎します。

●質問者: TEKKAMEN
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:INDEX Pear PHP Web あなた
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Knoa
●60ポイント

こういう質問は楽しいです。

1. 前者です。pathinfoを使ってコントロールしています。ただし後者の「index.phpへのにアクセスは最初だけ」の意味がよくわかりません。前者と同じように感じてしまいます。

2. ずばりconfigファイルと、pathinfoを使ってコントロールするファイル、計2ファイルのincludeのみです。前はいろいろ書いてたときもありましたが、この2ファイルそれぞれの中に書くようになりました。

3. lib/の中に、'(クラス名).php'の名前で置きます。

4. 汎用的なものはlib/index.phpに書いてしまっています。あとは'(用途).php'というファイルがいくつか。

5. ディレクトリ構成を紹介します。

config/ 設定。たいてい1ファイルだけで足りるが、増えることを考慮してディレクトリに入れる。

lib/ クラスや関数。configでファイル走査して自動で読み込む。外部から得たライブラリもここにディレクトリを作る。

page/ pathinfoなどをもとに画面制御。実際のURLと同様の構成でディレクトリを作る。

smarty/ 画面表示テンプレート。

js/ JavaScript。

css/ スタイルシート。

img/ 画像。

dev/ 開発用。SQLインターフェイスなど。

work/ メモ。テンポラリ。ゴミ箱。

◎質問者からの返答

とても丁寧なご回答ありがとうございます!こちらこそ、回答を拝見しながら楽しくなってしまいました。

1.の後段(index.phpへのアクセスは最初だけ)の趣旨ですが、index.phpはアプリのトップ画面(及びそのロジック)を意味する「画面ごとのPHPファイル」で、他の画面もトップ画面と同じ比重でロジックを担当する・・という意味でした。

要するに、

(1)ひとつの特別なファイルがアプリ全体のロジックを制御する方法

(index.php->index.php->index.php)

(2)そのようなファイルを設けず、画面ごとにビューとロジックを同居させる方法

(index.php->second.php->third.php)

のふたつの方法があって、PHPの構造は本来的には

(2)を想定しているのかな、と思ったのです。

自分としては(1)で記述するのが好きなのですが。

頂いた回答は自分の好みにとても近いものでしたので、嬉しくなってしまいました^^

とても参考になりました。ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ