1

Symfony 2 で PHPWord を使用したいだけですが、Symfony 2 は初めてです。

PHPWord ソースを util フォルダー バンドルに貼り付けましたが、PHPWord からオートローダー クラスをロードする際にエラーが発生しました...

質問は簡単です。どうすればコード (この場合は PHPWord) を「ラップ」してバンドルできますか? とかなんとか使えます。

解決策はありますか?


答えてくれてありがとう、それは私にいくつかの光を与えます。しかし、これは私にはうまくいきません。composer.phar をダウンロードし、あなたが言うように composer.json を編集します: 私の必要な領域に "phpword/phpword": "0.6.2" を追加し、新しいリポジトリ phpword を作成します...

動作しません。「php composer.phar」コマンドを実行しましたが、何もダウンロードされません...

これを機能させるためのチュートリアルやヒントはありますか?

ありがとうございました

4

4 に答える 4

4

composer require phpoffice/phpword dev-master私のために仕事をしました。

Symfony2 インストールのフォルダーの下に PhpOffice\PHPWord をダウンロードしてインストールする必要がありvendorます (composer.json を自動的に変更するだけでなく)。

コントローラーで、usePhpWord を実行しようとしています:

use PhpOffice\PhpWord\PhpWord;

アクション内で、次のように新しいインスタンスを作成できます。

$doc = new PhpWord();

于 2014-09-17T07:49:42.250 に答える
1

ソースコードを自分でコピーするべきではありません。composer を使用して PHPWord をインストールします。

PHPWord は (まだ) composer を使用していないため、composer.json でリポジトリを定義する必要があります。

{
    "require": {
        "phpword/phpword": "0.6.2"
    },
    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "phpword/phpword",
                "version": "0.6.2",
                "dist": {
                    "url": "http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpword&DownloadId=138035&FileTime=129545976016270000&Build=19692",
                    "type": "zip"
                },
                "autoload": {
                    "classmap": ["."]
                }
            }
        }
    ]
}

Symfony プロジェクト (実際にはすべての PHP プロジェクト) で PHPWord を使用できるようになります。

$word = new PHPWord();
$writer = new PHPWord_Writer_Word2007($word);
$writer->save('test.doc');

更新: ダウンロードする URL が時間とともに変化することに気付きました。変わらないものに置き換えた方がいいでしょう(可能であれば、そうでなければ自分でホストしてください)。

于 2012-11-26T18:28:31.337 に答える
0

URL が変更されるため、dev バージョンに問題がなければ、github リポジトリを使用できます。

{
    "require": {
        "phpword/phpword": "dev"
    },
    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "phpword/phpword",
                "version": "dev",
                "dist": {
                    "url": "https://github.com/PHPOffice/PHPWord/archive/develop.zip",
                    "type": "zip"
                },
                "autoload": {
                    "classmap": ["."]
                }
            }
        }
    ]
}
于 2013-02-07T11:20:08.667 に答える