7

Firebird 2.5.2.26539 を使用しようとしています:

  • ウィンドウズ8
  • アパッチ 2.2.22
  • PHP 5.4.10

PHPでfirebirdの拡張機能を有効にすると:

- extension=php_interbase.dll
- extension=php_pdo_firebird.dll

次のエラーが表示されます。

[26-Dec-2012 12:08:11 UTC] PHP 警告: PHP の起動: 動的ライブラリ 'C:\Program Files (x86)\PHP\ext\php_interbase.dll' を読み込めません - 指定されたモジュールが見つかりません。行 0 で不明

[2012 年 12 月 26 日 12:08:13 UTC] PHP 警告: PHP の起動: 動的ライブラリ 'C:\Program Files (x86)\PHP\ext\php_pdo_firebird.dll' を読み込めません - 指定されたモジュールが見つかりません。行 0 で不明

コマンド ラインで PHP -a を作成すると、エラー メッセージが異なります: fbclient.dll が見つかりません。

Flamerobin を実行していて、データベースが開きます。そこで、fbclient.dll を PHP ルート パスにコピーします。次に、エラーが次のように変わります。

[26-Dec-2012 11:55:46 UTC] PHP 警告: PHP の起動: 動的ライブラリ 'C:\Program Files (x86)\PHP\ext\php_interbase.dll' を読み込めません - %1 は有効な Win32 ではありません応用。行 0 で不明

[26-Dec-2012 11:55:46 UTC] PHP 警告: PHP の起動: 動的ライブラリ 'C:\Program Files (x86)\PHP\ext\php_pdo_firebird.dll' を読み込めません - %1 は有効な Win32 ではありません応用。行 0 で不明

誰でもこれで私を助けることができますか?このバージョンの Firebird には、PHP 用に作成された正しい拡張がまだ含まれていないのではないかと思います。ありがとうございました。

4

3 に答える 3

6

上記の Nenhum Pois é によるコメント (見逃している人もいるかもしれません) を繰り返します。これが問題の真の解決策だからです。

問題は、FB 64 ビット インストールの fbclient.dll でした。32ビットからfbclient.dllを取得し、PHPルートにコピーして問題を解決しました

于 2013-11-07T20:54:08.993 に答える
2

CliとApachePHPは、2つの異なる構成ファイルで実行されます。これは、CLIモードでのエラーメッセージの欠如を説明します。可能性は、PHP拡張フォルダーに保存されていないこのアプリケーションの拡張です。私はWindowsでの構成に精通していないので、Windows PHP拡張ディレクトリをグーグルで検索し、拡張ファイルがそこにあることを確認する必要があるかもしれません。

エラーから判断すると、パスは「C:\ Programfiles(x86)\ PHP \ext\」です。

それらをロードする前に、拡張子ファイルがそこにあることを確認してください。

于 2012-12-26T15:20:40.897 に答える
0

Windows で実行する場合は、拡張機能が PHP インタープリターと同じバージョンの Visual Studio コンパイラーでコンパイルされているかどうかを確認してください。

PHPダウンロードページより https://windows.php.net/download

  • PHP 7.3 = VC15
  • PHP 7.1 = VC14
  • PHP 5.6 = VC11

サンプル用の MongoDB 拡張機能は VC11 でコンパイルされていますが、https: //pecl.php.net/package/mongo/1.6.16/windows を参照して、DLL リストのファイル名を確認してください。-vc11-

于 2019-02-20T09:03:53.867 に答える