web-dev-qa-db-ja.com

WindowsにZend Frameworkをインストールする方法

「Zend Frameworkのインストールはとても簡単です!!!!」ええ、その通り...

さて、私は初心者向けの本を扱っています。過度に詳細に説明されていないことが最も重要な部分です。クイックスタートガイドを何時間も閲覧した後の説明は次のとおりです。

"Zendをダウンロード[...]インクルードディレクトリ(bla bla)を追加すると、完了です!"

右、私はZendを使用して完了しました。

とにかく、まだです。私はあなたの人々に懇願します、私はベッドに行きたいです、フレームワークをインストールする方法(簡単な6年生の詳細)を教えてください。 htdocsディレクトリに解凍されたフォルダーがあり、zf.bat + zf.phpをhtdocsルートに配置しました。

次は何ですか?

どうもありがとうございます。

24
Gal

WindowsコマンドシェルのPATHに問題があるようです。これはZend Frameworkから独立しています。シェル環境でのPATHの概念を理解することは、多くのプログラマーが克服しなければならないハードルですが、一度理解すれば、それを使用して生産性を向上させることができます。

そのプログラムの絶対パスを使用して、コマンドシェルからいつでもプログラムを実行できます。例えば:

C:\> c:\wamp\bin\php\php.exe

相対パスを使用してコマンドを実行することもできます。つまり、現在の作業ディレクトリから実行するプログラムの場所へのパスを入力します。

C:\> cd c:\wamp
C:\> bin\php\php.exe

しかし、コマンドシェルでコマンドを実行する場合なし実行可能ファイルへのフルパスを指定しないと、シェルはディレクトリの1つで実行可能プログラムを見つけようとします。 PATH環境変数にリストされています。つまり、パスはディレクトリ名がセミコロンで区切られた文字列です。実行可能ファイルを実行するために、シェルは、リストにある各ディレクトリを、

C:\> type %PATH%
C:\WINDOWS\;C:\WINDOWS\SYSTEM32
C:\> php.exe
...error that it cannot find php.exe...

特別なケース:php.exeの実行は、現在の作業ディレクトリがそのプログラム実行可能ファイルの場所である場合にも機能します。ただし、これは相対パスを使用した例であり、ディレクトリレベルが0のパスを使用しています。

2番目の問題は、パスを指定せずにzf.batを呼び出すスクリプトであるphp.exeを実行していることです。 PATH環境変数にphp.exeの場所が追加されていることを前提としています。

C:\> SET PATH=%PATH%;C:\wamp\bin\php
C:\> php.exe -v
PHP 5.3.1 (cli) (built: Nov 29 2009 13:59:20) 
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

zf.batスクリプト自体も見つける必要があります。これを行うには、それが存在するディレクトリをPATHに追加します。 Zend FrameworkをC:\zfにインストールしたと仮定します。次に例を示します。

C:\> type %PATH%
C:\WINDOWS\;C:\WINDOWS\SYSTEM32;C:\wamp\bin\php
C:\> zf.bat
...error that it cannot find zf.bat...
C:\> SET PATH=%PATH%;C:\zf\bin
C:\> zf.bat show version
Zend Framework Version: 1.10.0dev

Zend Framework outsidehtdocsディレクトリにインストールすることもお勧めします。 htdocsの下に必要なPHPファイルは1つだけです。これは、Zend Frameworkがフロントコントローラをインスタンス化するために使用する単一のbootstrapファイルです。リクエストをディスパッチします。

zf.batを使用してスケルトンアプリケーションを生成すると、そのディレクトリ内にPHPスクリプトindex.phpを含むpublicというディレクトリが作成されます。このindex.phpファイルはhtdocsディレクトリにある必要があります。CSS、JavaScript、画像などのアセットもhtdocsの下にある必要があります。その他のアプリケーションコード、およびZend Framework自体全体がoutsideyour htdocsである必要があります。特に、データベースなどの機密データを保存する構成ファイルパスワードなど.

index.phpファイルを編集できます。 PHP定数APPLICATION_PATH]を定義できます。これは、アプリケーションコードの残りの場所です。

<?php

defined("APPLICATION_PATH")
    || define("APPLICATION_PATH", realpath(dirname(__FILE__) . "/../application"
));

APPLICATION_PATHのデフォルトの定義は、htdocszf.batツールによって生成された残りのアプリケーションコードの姉妹ディレクトリであることを前提としています。アプリのコードは他のどこにでも配置できますが、上記のコードを変更して、index.phpスクリプトがコードを見つけられるようにする必要があります。

また、index.phpスクリプトは、ライブラリコードの場所をPHPのINCLUDE_PATHに追加する場合があります。これは、Zend Frameworkライブラリを検索可能にする必要がある場合、またはアプリケーションで他のサードパーティのPHPコードを使用する場合に便利です。C:\zfにZend Frameworkをインストールしたとすると、 PHP INCLUDE_PATHlibraryサブディレクトリを追加する必要があります。

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    "C:/zf/library",
    realpath(APPLICATION_PATH . "/../library"),
    get_include_path()
)));

zf.batスクリプトによって生成されたコードテンプレートは、コードがどこにあるかについて適切なデフォルトの推測を試みますが、環境は独自のものであり、これらのスクリプトを編集して、コードをインストールした実際の場所を指定し、ライブラリ。

19
Bill Karwin

フレームワークはhtdocsフォルダにある必要はなく、どこにあってもかまいません。どこかに解凍すると、50%完了です。

次のステップは、php.iniファイルを見つけることです(たとえば、htdocsフォルダーにファイル<?php phpinfo();?>を作成し、それを実行して、最初のブロックで「構成(php.ini)ファイルパス」(または同様の)を探します)。そのファイルで、ZendFrameworkへのパスをinclude_dirディレクティブに追加します。これにはlibraryフォルダを含める必要があります。設定は次のようになります。

include_dir = .;c:\php\ZendFramework\library

多くの場合、PEARへのパスも含まれています。

次に、サーバーを再起動します。

完了です。

2
johannes
  1. Zend!= Zend Framework
  2. Zend Frameworkをインストールする必要はありません。それは単なるライブラリであり、どこかに置く必要があるだけです。
  3. Johannesが言うように、PHPにライブラリを探す場所を指示する必要があるので、Zend Frameworkライブラリが配置されているフォルダーをphpインクルードパスに追加します。

それだけです、これ以上ありません!

今、あなたの本当の問題はZend Framework自体とは何の関係もないようです。 Zend_Toolを使用しようとしていますが、コマンドラインツールzf.batがシステムパス上にないため、コマンド「zf」を使用できません。 Zend Frameworkは、ツールなしで問題なく機能します。それを使用する場合は、zf.batが存在するフォルダーにいるときにコマンドを呼び出すか、システムパスにzf.batへのパスを追加してください。

これは曖昧ではない方法で意味します:

if (path-to-zf.bat isOn SYSTEM_PATH)
{
    you can call 'zf' from anywhere;
}
else
{
    you must be in the folder where zf.bat also is, if you want to call 'zf';
}
2
markus

http://normankosmal.com/wordpress/?p=47 から派生:

****> ****Process  of install zend framework in window 
> 1) Download zend framework
> 2)After installing xampp extract the
> Zend Framework files into a folder of
> your choice. Next step is to edit the
> php.ini. Usually this file can be
> found in the php folder in your xampp
> installation. Find the line that says
> include_path and edit the line like
> this:
>     Windows: “\path1;\path2″
>     include_path = “.;D:\Informatik\SERVER\xampp\php\pear\;D:\Informatik\SERVER\xampp\php\ZendFramework\library”
>     3) 
>      did you add your php interpreter to %PATH%?
>     In which file i have to add the PHP interpreter?
>     You mean i need to edit zf.bat file
>     SET ZF_SCRIPT=%PHP_DIR%\zf.php
>     Here in place of %PHP_DIR% i need to add the path of my PHP directory?
>     Can you plzz help me out.
>     4) D:\Informatik\SERVER\xampp\htdocs>D:\Informatik\SERVER\xampp\php\ZendFramework\b
>     in\zf.bat create project testproject********
1

どのWebスタックを使用しているのかはわかりませんが、WindowsでZendを使用するのに最も簡単な方法は Zend Core をインストールすることです。これにより、Zend Frameworkで事前構成された完全なスタックがインストールされます。

0
Joe Internet

ここに入力すると読みやすくなります。

手順は次のとおりです。

  • ターミナルウィンドウを開く
  • cd c:\と入力します
  • タイプcd php
  • タイプzf create project c:/ Apache/htdocs/PROJECTNAME

すべて大文字にしたディレクトリとプロジェクト名に置き換えてください。

うまくいくはずです。 PHPホームディレクトリに移動する必要があったことに注意してください。これはphp.exeファイルがある場所であり、zf.batファイルとzf.phpファイルがある場所です。明らかに両方が必要です。 Zend_Toolを使用する場合。

0
user226002

ギャル-同じ問題があった。今週末は同じ本に取り組まなければならない。

ターミナルウィンドウで、プロジェクト作成の問題を解決しました。まず、作成したPHPホームディレクトリに移動する必要があります。

つまり、PHP5フォルダーにいる場合は、「zf create project c:/ Apache/htdocs/projectname」と入力します。

私は同じ問題を抱えていました:私がこれを理解するまでphp.exeファイルがありません。

-

それは朗報です。悪いニュースは、コントローラーとアクションを設定しようとすると同様の問題が発生することであり、私の修正はこれでは機能しません。私はまだこれを理解していませんので、私はより多くの情報で再度投稿し、おそらく他の人が助けてくれるでしょう。

0
user226002

ギャル、私はあなたが何をしたいのか分かりません。

フレームワークのインストールや構成はありません。あなたはただしなければならない

  1. フレームワークをどこにでも展開する
  2. Zf create "myproject"を実行してプロジェクトを作成します。
  3. /library => root folder of the frameworkにショーカット/リンクを作成します。このフォルダー(/ library)にフレームワーク全体をアンパックすることもできますが、プロジェクトが多い場合は、ディスクスペースを使用してフレームワークのコピーを多数作成することになります。
  4. webブラウザーをサイトにリダイレクトするときに/myproject/public/index.phpを開くためのApache構成を変更します。

つまり、これはzfとは何の関係もありません。コンピューターでサイトを作成する場合は、Apacheにどこにあるかを通知する必要があります。

パス全体を書き込むzf.batをいつでも実行できます。 zf.batがエラーを返さない場合、おそらくPHPのインストールに問題があります。

参考にできるように、これはzf_cmsという名前のプロジェクトの私のApache構成(httpd.conf)です

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:\Users\alex\Documents\My Web Sites\zf_cms/public"
ServerName zf_cms.conexion

<Directory "C:\Users\alex\Documents\My Web Sites\zf_cms/public">
    #DirectoryIndex index.php
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

次に、この行を%windir%\ system32\drivers\etc\hostsに追加する必要があります

127.0.0.1     zf_cms.conexion
0
Alex Angelico