1

サーバー全体でコードの整合性を維持するために、別のサーバーにロールアウトするたびに composer を使用してファイルをダウンロードするのではなく、/vendor/* ディレクトリをソース管理下に置きたいと考えています。ファイルは同一です。

ソース管理にコミットされたすべてのファイルに対して構文チェッカーを実行すると、次のエラーが発生します。

ファイル '/vendor/sensio/generator-bundle/Sensio/Bundle/GeneratorBundle/Resources/skeleton/bundle/Bundle.php' は、次のエラーで PHP 構文チェックに失敗しました:
PHP 解析エラー: 構文エラー、予期しない '}'、3 行目の /vendor/sensio/generator-bundle/Sensio/Bundle/GeneratorBundle/Resources/skeleton/bundle/Bundle.php に T_NS_SEPARATOR が必要です

このファイルの「エラー」は意図的なものですか? どんな助けでも感謝します。以下のファイルの内容:

<?php
namespace {{ namespace }};

use Symfony\Component\HttpKernel\Bundle\Bundle;

class {{ bundle }} extends Bundle
{
}
4

2 に答える 2

1

はい、このファイルの「エラー」は意図的なものであり、実際には「そのまま」php によって処理されるわけではありません。app/console generate:bundleコマンドがバンドルを生成するために使用するテンプレートです。

そのため、実際の名前空間と、バンドルを生成するときに選択したバンドル名{{ namespace }}に置き換えられます。{{ bundle }}

于 2012-09-12T10:16:44.523 に答える
0

まず、 が にあるかどうかを確認する必要がありphp/binます$PATH

PATH=$PATH: /your/path/to/php/bin
export PATH

また、PHP が CLI で実行できることを確認してください (シェルで を使用exec)。

次に、Sympony2 を実行するためのサーバー要件を確認します。

Symfony ディストリビューションで web/config.php を実行すると、システムがすべての要件を満たしているかどうかを簡単に確認できます。CLI は異なる php.ini 構成ファイルを使用することが多いため、次の方法でコマンド ラインから要件を確認することもお勧めします。

php app/check.php

必須:

  1. PHP は、PHP 5.3.2 の最小バージョンである必要があります
  2. Sqlite3 を有効にする必要があります
  3. JSON を有効にする必要があります
  4. ctype を有効にする必要があります
  5. PHP.ini に date.timezone 設定が必要です

オプション:

  1. PHP-XML モジュールをインストールする必要があります
  2. 少なくともバージョン 2.6.21 の libxml が必要です
  3. PHPトークナイザーを有効にする必要があります
  4. mbstring 関数を有効にする必要があります
  5. iconv を有効にする必要があります
  6. POSIX を有効にする必要があります (*nix のみ)
  7. Intl は ICU 4+ と共にインストールする必要があります
  8. APC 3.0.17+ (または別のオペコード キャッシュをインストールする必要があります)
  9. PHP.ini 推奨設定
    9.1. short_open_tag = オフ
    9.2. magic_quotes_gpc = オフ
    9.3. register_globals = Off
    9.4. session.autostart = オフ

Doctrine を使用する場合は、PDO をインストールする必要があります。さらに、使用するデータベース サーバー用の PDO ドライバーをインストールする必要があります。

于 2012-09-12T09:25:12.697 に答える