質問: phpフレームワークについて phpフレームワークで教えてください。 最近、「フレームワーク」という言葉を知りました。 今後「フレームワーク」を使ってwebアプリを作ったほうが楽なのかなと思っています。 そこで質問なのですが、mojavi、maple、ethna、zend、cakephpなど色々あるみたいですが どれがいいでしょうか? 条件としては、ホスティングサーバーで動かすのでインストールが比較的楽な物(php.iniやhttpd.confとかいじらなくても良い物)です。 使いたいのは、 ・フォームからの入力チェック ・データベース(mysql) ・smarty ・管理ページは管理者だけ(認証) 位です。 分らない事が出てきたらネットで調べる事になると思うので出来るだけ情報が多いものがいいです。 よろしくお願いいたします。
回答: mapleは触ったこと無いので詳しくはわかりませんすみません。 mapleを除いたフレームワークについて簡単に私の主観で解説します 基本的に全てのフレームワークでmvcモデルを軸としたフレームワークですので、mvcの概念が無いとさっぱりわかりませんよ また、ethnaは、標準でsmartyとpearを必須としていますので、これらのインストールが出来ないサーバーでの作業は無理です。 他のフレームワークはsmartyをテンプレートエンジンとして使うように改造する必要があります。 mysqlは全部のフレームワークで可能 管理者ページだのどうのこうのというのはあなたが作ることであって、フレームワークにはそんな機能ないです あくまでも骨組みを提供しているだけであって、何を作るかはあなた次第 たとえていうのであれば、コンクリート打ちっぱなしのマンションに壁で仕切って部屋を作ったり壁紙貼ったり塗ったりどんな用途に使う部屋を作るかは買った人の自由という感じのものです mojaviは今現在は開発がとまっており、mojaviから派生したsymfonyがあります http://www.symfony-project.org/ スケルトンクラスの自動生成機能あり 画面を表示するために必要なファイルを自動生成する機能があります。 ethnaは日本人が作ったフレームワークで現在はgreeの代表をしている人が中心になって作っています よくもわるくもgreeでの開発を中心としているフレームワークですので、greeで必要なものしか作っていない という部分があり、欲しい!と思う部分がいまだに開発途中だったり全くなかったりします http://gree.jp/ http://ethna.jp/ 日本人がつくったので、各ドキュメントやリファレンス類がしっかりとした日本語になっているのが特徴ですが、世界的シェアはあまりないので情報が少ない。 pearとsmartyにどっぷり依存しているのでpearとsmartyを知らないと使いこなせません。 基本的にはpearインストールを使うため、サーバー管理権限がないとインストールできない可能性もあります 一応、dlしてきて解凍するインストールの方法もありますが試したこと無いです。 スケルトンクラスの自動生成機能あり zend framework phpといったらzendですね phpの開発をしてる会社がつくったフレームワークでリリースされて間もないです かなり自由度が高いフレームワークですので、フレームワークとして使うこともできるし、単なるお便利class郡としても使えます 逆に言えばシステム設計者がしっかりとした知識が無いと何をして良いのか戸惑う可能性もあります dlしてきて解凍するだけで使えます。 スケルトンクラスの自動生成は無し (簡単なので自分で作れますよ) cakephp ruby on railsにどっぷりと感化されているフレームワーク dbの1テーブルに対してinsertやupdate、selectをするという感じのページであればほぼ全自動で作成できる機能など便利そうなんだけどそこはrorの流儀を頑なに守っているため、dbのpkがシングルでないとだめ、つまり複合キーを持つテーブルに対しては不利 この機能を使って管理画面のマスター管理系を作るのは便利かもしれません まっさらな新規開発のプロジェクトの時には候補になるが、既存のシステムのリプレイスとしてcakephpを選ぶとdbレイアウトとの兼ね合いで大変です スケルトンクラスの自動生成機能あり この中で、世界的にシェアを争っているのが symfony、zendframework、cakephpの3大frameworkです phpの本家本元と理由やスキルのある人であればかなり自由に作りこめるとの理由からzendframeworkに人気が出始めているように思います。 ethnaも日本ではそこそこ人気あるようです いづれも解説書が出ていますよ どのframeworkもhttpd.confやphp.iniをいじれなくともよいですが、.htaccessの設置設定を認めてないレンタルスペースだと動かないフレームワークもあります どっちにしろ、自分のパソコン内で開発環境を作らないとどうしようもないので 一通り全部のフレームワークを試してみては?