• ベストアンサー

Zend FrameworkがあればSmartyはいらない?

Zend Frameworkを使えばSmartyは使う必要がないでしょうか?テンプレートはZend Frameworkに最初から組み込まれているでしょうか?

  • PHP
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

zend Frameworkは、テンプレートエンジンとして、viewの機能はあります。 しかし、その記述方法は HTML内でPHPとして埋め込みます 例えば smrtyで書けば <a haef="http://aiueo.jp">{$data.str}</a> のような感じになる部分を、Zend Frameworkに内包されているviewを使った場合は <a haef="http://aiueo.jp"><?php $data->str; ?></a> 見たいな感じで記述します Smartyの中間コンパイルファイルを手動で作っているような感じ (*Smarty標準で template_cに入っていく中間コンパイルファイルです) Smartyを使いたく無いのであれば、標準のviewエンジンをそのまま使うのも手です。 ただ、業務上、HTMLを触るデザイナーさんがSmartyしか理解できないのであれば、SmartyをZendFrameworkのviewエンジンとして使うほうが業務上間違いもなくスムーズかと思います ZendFrameworkでは他のテンプレートエンジンを使うこともできます。 標準のviewエンジンの代わりに他のテンプレートエンジン(Smarty等)を使う方法や標準のviewエンジンを停止させて他のテンプレートエンジンを噛ましてあげる方法など、いくつかの方法がありますので調べてみてください。

関連するQ&A

  • zendにsmarty3の組込で

    こちらのページを参考に表示にsmartyを入れてみました。 http://www.phppro.jp/school/smarty/vol12/2 ※smartyは3.0.6でzendは1.11.3です indexActionで格納した変数はtplで表示されているので組込は 成功しているかと思うのですが下記のようなエラーが表示されます。 Warning: include_once(Smarty\Internal\Data.php) Warning: include_once(Smarty\Internal\Template.php) ファイルを確認すると確かに該当データがありません。 smarty3なのでフォルダ名がInternalではなくsyspluginsに変わって いる事が原因かと思うのですがどのように対処すればいいでしょうか?

    • ベストアンサー
    • PHP
  • PHPフレームワーク環境でのSmartyの必要性

    PHP でシステムを開発する際ですが、恐らく何かしらのフレームワークを利用した場合は大半だと思います。そう言った時にテンプレートエンジンの Smarty を合わせて利用するかどうか意見が別れる時があります。 PHP でフレームワークが今ほど使われていなかった大昔は、素の PHP 実装 + Smarty で、ロジックとテンプレートを分離する流れがありました。 しかし、現在利用されるほとんどのフレームワークでは当たり前のように MVC の思想で構成されており、ロジックとテンプレートは初めから分離されています。 そう言った状況の中、Smarty を各フレームワークと連携してテンプレートエンジンとして利用する必要がどれほどあるのか、判断に苦しみます。 皆さんはどう考えるでしょうか?

    • 締切済み
    • PHP
  • zend frameworkでの拡張について

    PHP5.2.4、zend framework1.9.5を使用しています。 Zend_Captcha_WordクラスのgetSession関数内の $this->_session->setExpirationHops(1, null, true); を $this->_session->setExpirationHops(2, null, true); に書き換えたいのですが、できれば元のファイルを書き換えることなく 例えばZend_Captcha_WordExというZend_Captcha_Wordを継承したクラスで getSession関数を書き換えればいいと思ったのですが、しかしそうすると Zend_Captcha_Wordを継承している class Zend_Captcha_Image extends Zend_Captcha_Word{ } や class Zend_Captcha_Figlet extends Zend_Captcha_Word{ } までZend_Captcha_WordExに書き換えないといけないので、 この派生クラスを作って書き換えるやり方は現実的ではないと思いました。 zend frameworkにおいてこういう場合はどのようなやり方で記述すれば良いのでしょうか?

    • 締切済み
    • PHP
  • Zend Framework

    こんにちは。 PHP zend frameworkについて質問です。 GETパラメータを使用する際に、 http://ホスト名/コントローラ名/アクション名/パラメータ1/バリュー1/パラメータ2/バリュー2 という風にパラメータを渡しますが、 たとえば、バリュー1にURLを渡したい場合、どうすればいいのでしょうか? URLに"/"が含まれるため、おかしくなってしまいます。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPのフレームワーク

    PHPのことはよく分かりませんが、いくつかのフレームワークがあります。 知らないながらもキーワードをあげると、Symfony,Smarty,Zendなど。 RubyではRubyOnRailsが圧倒的ですが、PHPの場合は、どれが有望あるいはどれがよいのでしょうか? 個人的趣味でお答えください。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • SmartyとMVCフレームワークに関して

    殆どMVCフレームワークを使用したことがなく 今更ながら覚えようかと思っています。 MVCフレームワークはCakePHPかCodeIgniterどちらか悩んでおり モデル設計が殆ど必要ない分CodeIgniterがいい気がしていますが 実際のところどちらのフレームワークとSmartyを使用するのがいいのでしょうか? 今回は小規模~中規模のサイトの予定なので簡単に導入取得ができるものが希望です。 CodeIgniter+Smartyの場合、導入方法のサイトが古いものばかり(新しい記事もあるが違う方法)で 最近の最も使われている手法が分かりません・・・ 経験者の方などのご教示お願いします。 CodeIgniterのライセンスが変わったとかで日本サイトの更新が停止しているようなので将来性のことも含めてご回答お願いします>< *導入方法などもご教示いただけましたらお手数とは思いますがよろしくお願いいたします><

    • ベストアンサー
    • PHP
  • Zend Frameworkのコントローラー名について

    Zend Frameworkのコントローラー名について 現在 CentOS release 5.3 (Final) PHP5.2.14 Zend v2.2.0 にて開発を行っております。 今回URL(コントローラ名)にアンダースコアをつけたい要件があるのですが、可能なのでしょうか? 可能な場合その方法をご教授くださいませ。 例)http://hoge.co.jp/aaa_bbb/ aaa_bbbをコントローラとしたいのですが、Zendの命名規則ではできないようなのですが、 何かしら方法があるのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • Zend Framework アップロード

    Zend Frameworkでファイルをデータベースへアップロードをするためのプログラムを作成していますが、うまくいきません。 ファイルをPOSTデータで送ろうとしているのですが、ファイルのアップロード以前にZend_File_Transfer()が使えません。 not foundとなります。require_onceなどで無理やり読み込もうとすると、Fatal error: Uncaught exception~となります。 ファイル名だけであれば、簡単にデータベースに書き込むことができますが、ファイルそのものをアップロードすることはできません。 リクエストから、フォームの「name="~"」の~を読み込むことは出来ますが、$_FILESが存在しないことになっています。「type="file"」としてPOSTデータで送っています。 どなたかご支援ください。 よろしくお願いします。

    • 締切済み
    • PHP
  • PHPのフレームワークの中でSmartyと親和性の高いものにはどんなものがありますでしょうか?

    お世話様です。 表題の通りなのですが、 「PHPのフレームワークの中でSmartyと親和性の高いものにはどんなものがありますでしょうか?」 先日、あるサイトで、 PHPのフレームワークでどれが一番いいか、という投票をやっていまして、 結果はシンフォニーが一番でした。 ですが、とあるブログで、シンフォニーだとSmartyを使うのに苦労する、 というような内容が書いてありました。 といったわけで、このような質問をさせていただいた次第です。 //--------------------------- また、自分は今までフレームワークを用いたことがないため、 比較的とっつきやすいフレームワークだと、うれしいです。 (が、あくまで「Smarty との親和性が高い」のほうが優先ということで) 以上、よろしくお願い申し上げます。

    • ベストアンサー
    • PHP
  • Zend Frameworkは商用サイトで使うときは有償ですか?

    http://www.zend.com/en/community/framework# をみると --- thoroughly tested PHP 5 framework that gives you a vibrant community your company can depend on, open-source code you can use as you please (including building your own business specific code and reselling as you see fit--with the new BSD license), and the latest Web 2.0 and other modern features all web applications need. ---と・・・。 New BSD licenseというのがちょとわからないです。 で、http://www.zend.com/en/downloads/index だと、try | infoのリンクが。 tryといっても、try and buyじゃなくて、try and use under New BSD license てな意味なんでしょうか? //----------------------- で。。。 http://framework.zend.com/home や http://framework.zend.com/download をみると、tryとも書いてなく、いきなりDLできる。 http://framework.zend.com/manual/ をみても、金銭のことについて書いてない。 //----------------------------- でも、 http://www.zend.co.jp/products/platform/index.php にはページ最下部に、値段が・・・。(たかい・・・) (バージョンが違うから?日本語版だから?) //以上、見落としがあったらすみません。 ということで、 「Zend Frameworkは商用サイトで使うときは有償ですか?」 ケースによって違うのでしょうか? ご存じの方、教えていただけますでしょうか? よろしくお願い申し上げます。

    • ベストアンサー
    • PHP

専門家に質問してみよう