![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
実質的には初めてのWebアプリケーション開発です。
さて、社内でも意見が割れているのですが、コーディングはHTMLとPHPのどちらをベースにしたら良いでしょうか?
【HTMLベース】
<input ~ value="<?=$hensu?>">
<?
if($hensu==6){
$cnt=0;
}
?>
【PHPベース】
print ("<input ~ value=\"$hensu\">");
if($hensu==6){
$cnt=0:
}
つまり、
「HTMLの中にPHPを埋め込んでいく」
「PHPの中にHTMLを埋め込んでいく」
開発効率やメンテナンス、あるいは世間の趨勢等、
どちらがいいのでしょうか?
No.3ベストアンサー
- 回答日時:
先の回答者が2人とも PHP ベースとおっしゃっているので
私は普段 HTML ベースなので、少し意見を。
で、Web アプリケーションの開発ですけど、
ビジネスロジック・インタフェース・デザインは
分離して開発するといいと思います。
したがって、出来る限り HTML と PHP は分離
する方がよいと思います。
例えば、簡単なカウンターを考えた場合、
ファイルから現在のカウンタを取得し、ロックかけて
1カウントアップして画面に表示する。
となりますが、
私が PHP を使って開発する場合、こんな感じに
なります
<?php
require("CCounter.php");
cCount = new CCounter();
cCount.countUP();
?>
<html><head></head><body>....
<p><?php echo cCount.getCount(); ?>
</body></html>
つまり、処理のほとんどを PHP のクラスに
閉じ込めてしまいます。
つまり HTML を出力する PHP では極力 PHP が
登場しないようするべきだと思っています。
結果的に HTML ベースの形になります。
これだと、画面レイアウトの変更とかが
最悪デザイナーに依頼してもやってくれます。
PHP ベースだと Web デザイナーに画面を綺麗に
してもらうのは、なかなか困難かと思うので。
---
というわけで、私は
■ 画面レイアウトの HTML
■ ロジックの PHP クラス
に分離し、HTML に最小限の PHP を埋め込むことで
Web アプリの開発をしています。
どうでしょう。一意見として聞いていただければ
幸いです。
ご回答ありがとうございます。
> HTML を出力する PHP では極力 PHP が
登場しないようするべきだと思っています。
なるほど、参考になります。
現在、開発標準を決めている段階なのですが、
その方向でも検討してみたいと思います。
(お礼が遅くなりまして申し訳ございませんでした)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_04.png?e8efa67)
No.6
- 回答日時:
ご回答ありがとうございます。
恥ずかしながら初めて耳にしました。
参考URLをじっくり読ませて頂き、
目的に合うようなら選択肢の
ひとつとしたいと思います。
(お礼が遅くなりまして申し訳ございませんでした)
No.5
- 回答日時:
ケースバイケースかと。
・デザインを外注する
・デザイン変更しやすい、というのを売りにする
以上の場合はHTMLベースで、
・明らかに変数などをちまちま書き出さねばならない
・急いでいる(笑)
等の場合はPHPベースで書くとよいと思います。
横ですが、
>私は、一つのPHPで複数ページを表示
私はこれは結構好きですね。たしかに小さいアプリ限定ですが。
フリーCGIのようにコーディングの知識などない人が変更しないという前提で使うという用途で配布するような場合は努めてそうします。これもケースバイケースですか。
役に立たん中庸な回答申し訳ないです。
ご回答ありがとうございます。
「急いでいる」場合にPHPベースというのは、
私のようなPHP初心者には厳しいかもしれませんね。
「デザイン変更しやすい」という面から検討してみたい
と思います。
(お礼が遅くなりまして申し訳ございませんでした)
No.4
- 回答日時:
私も、#3と同じくHTMLベースというか、デザインとロジックは分離するほうがいいと思います。
イメージとしては、
PHPのクラスとかファンクションのみで、HTMLは出てこない logic.php を、
ほぼHTMLのindex.phpで、requireして使うみたいな感じです。#3と同じですね。
私は、一つのPHPで複数ページを表示するのは邪道だと思います。(小さなアプリだとついやってしまいますが。)
まあ、こういうのは、いろんな人なりにポリシーというか好みというかのがあって、違う考えの人を説得するのは難しいので、チーム開発の場合は、私は黙って上の人とか多数派に従いますが。
ご回答ありがとうございます。
どちらがベースと考えるより、
PHPとHTMLを極力分離させる、
という方向で考えてみたいと思います。
確かに「好みの問題」になる可能性はありますね。
(お礼が遅くなりまして申し訳ございませんでした)
No.2
- 回答日時:
私の場合は複数ページを1プログラムで表示させていますのでPHPをベースにした方がやり易かったです。
フォルダ内にindex.phpを置き各ページを呼ぶ際は
case文を用いて振り分けを行います。
※.htaccessで下記文章を編集して追加する事が前提
DirectoryIndex index.php index.html index.htm index.cgi index.shtml
例)呼び出し:index.php?action=main(POSTでもGETでもOK)
振り分け:switch($_GET[action]){
case "main":main();break;
case "image":image();break;
case "music":music();break;
default:start();break;
}
こうすると各ページが関数で呼び出せるのでフォルダ内がシンプルになりメンテナンス効率が良くなります。
あと、hedderやfooter等、各ページ統一の関数を作成しておけば全ページに統一性を持たせる事が出来ます。
- 以上 -
ご回答ありがとうございます。
なるほど。こういったやり方もあるのですね。
複数ページを1プログラムで表示する予定は
ないのですが、この方法は他の場面で使えそうです。
(お礼が遅くなりまして申し訳ございませんでした)
No.1
- 回答日時:
サーバーに入れてあるPHPがZendなどでチューニングされているならPHPベースが良いと思います。
素の状態ならどちらもあまり変わらないと思います。
どれくらいの規模のWebアプリか存じませんが
比較的に処理速度を求めるならPHPベース
サイトデザインを含めてメンテナンスのし易さで選ぶならHTMLでしょうか?
あとは好みの問題だと思います、
一から構築されるのであればJSP+サーブレット+jetspeedが良いかも・・
ご回答ありがとうございます。
>サイトデザインを含めてメンテナンスのし易さで選ぶならHTML
画面数、データ量共に大した規模ではないので、
メンテナンスの容易性は魅力的です。
>JSP+サーブレット+jetspeed
そういう選択肢もあるのですか。残念ながら開発環境は
変更できなそうです。
(お礼が遅くなりまして申し訳ございませんでした)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP php ログイン 1 2022/11/01 00:24
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
fputsで書き込みを行う際に、in...
-
onedrive にexcelファイルをア...
-
別ファイルの変数を呼び出した...
-
PHPの設定で、 エラーが発生し...
-
【PHP】declare命令で”Fatal er...
-
.phpと.incファイルの違いはな...
-
CFileDialogの最初のディレクト...
-
bindValueエラー
-
「@$変数」の「@の意味は?」
-
apache・phpが起動しない・・・
-
フォントの色を変えるには?
-
バッチを用いたフォルダの自動移動
-
MySQLのdatetime型の月日0を削...
-
<A href ~ と一緒に値を渡すには
-
makefile でファイルをコピーす...
-
FTPコマンドでディレクトリごと...
-
TSVファイルをCSV形式に変換したい
-
FTPClientで転送結果(OKかFAIL)
-
PHPファイルの中身が見られるこ...
-
ワードプレスサイト PHP8.0.25...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[PHP] 任意のDNSでIPアドレスを...
-
wordpressのルートのindex.php...
-
すべてのページのurlをindex.ph...
-
PHP/icludeを使った相対パスの...
-
require_onceで読み込む場合、...
-
.htaccessファイルの修正がこれ...
-
CakePHPの表示エラーについて
-
phpによる携帯振り分けとSEOの...
-
相対パスの挙動を理解できない
-
モバイルとPC にエージェン...
-
phpで24時間おきに任意のテキス...
-
ゼンド フレイムワークがどうや...
-
$_GET 取得できない
-
歴史上の人物や宗教
-
PHPでグローバルナビゲーション...
-
PEARを使ったメール送信でのinc...
-
特定のディレクトリだけ、phpを...
-
深い階層のフォルダの作成や削...
-
smartyで同じテンプレートを使...
-
ApacheのRewrite
おすすめ情報