14

提供されている指示に従ってXAMPP を使用して、Windows 開発サーバーにオープンソースのマイクロブログ アプリケーションであるLaconicaをインストールしようとしています。

Web サイトで PEAR が見つからず、次のエラーがスローされます。

警告: require_once(PEAR.php) [function.require-once]: ストリームを開くことができませんでした: C:\xampplite\htdocs\laconica\lib\common.php の 31 行目にそのようなファイルまたはディレクトリはありません

致命的なエラー:require_once() [function.require]: C:\xampplite\htdocs\laconica\lib\common で必要な 'PEAR.php' (include_path='.;\xampplite\php\pear\PEAR') を開くことができませんでした。 php 31行目

  1. PEAR は次の場所にあります。C:\xampplite\php\pear
  2. phpinfo()インクルードパスが.;\xampplite\php\pear

私は何を間違っていますか?PEAR フォルダが含まれていないのはなぜですか?

4

8 に答える 8

24

include_path正しい場所を指すようにシステム変数を修正する必要があります。

それを修正するには、php.iniファイルを編集します。そのファイルには、" include_path = ..." という行があります。(ページ上で実行すると、php.ini の場所を知ることができます。) " " と書かれている行の部分を " " にphpinfo()修正します。行の前後にセミコロンを必ず残してください。\xampplite\php\pear\PEARC:\xampplite\php\pear

PHP を再起動すると、準備完了です。IIS で PHP を再起動するには、サイトに割り当てられているアプリケーション プールを再起動するか、IIS をすべて再起動することをお勧めします。

于 2008-09-15T13:23:59.753 に答える
4

最初に他のすべての回答を試しましたが、どれもうまくいかないようだったので、pear構成ファイルにpearパスを静的に設定しました

C:\xampp\php\pear\Config.php

このコードを見つけます:

if (!defined('PEAR_INSTALL_DIR') || !PEAR_INSTALL_DIR) {
    $PEAR_INSTALL_DIR = PHP_LIBDIR . DIRECTORY_SEPARATOR . 'pear';
} 
else {
    $PEAR_INSTALL_DIR = PEAR_INSTALL_DIR;
}

これを次のように置き換えます。

$PEAR_INSTALL_DIR = "C:\\xampp\\php\\pear";

Apache を再起動し、次のコマンドを使用しました。

pear config-all 

すべてのパスが C:\php\pear で始まっていないことを確認してください

于 2015-07-03T10:00:30.157 に答える
1

ポイント1によると、PEARパスはc:\ xampplite \ php \pear\です。

ただし、パスは\ xampplite \ php \ pear\PEARを指しています。

2つを上下に並べると、一方が長すぎることがはっきりとわかります。

c:\ xampplite \ php \ pear \

\ xampplite \ php \ pear \ PEAR

インクルードパスは、1つのPEARをPearツリーの奥深くに移動するように設定されています。pearフォルダーのPEARサブフォルダーには、PEARコンポーネントが含まれています。インクルードパスを1レベル上に調整する必要があります。

(cは必要ありません:ちなみに、パスはそのままで問題ありませんが、深すぎます)

于 2008-09-15T13:16:33.500 に答える
0

ドライブ文字を追加してみてください。

include_path='.;c:\xampplite\php\pear\PEAR'

また、PEAR.phpが実際に存在することを確認します。代わりに\php\に存在する可能性があります。

include_path='.;c:\xampplite\php'
于 2008-09-15T13:15:18.277 に答える
0

この種の問題に対するもう 1 つの落とし穴は、Windows マシンの Unix シェル (Git Bash や Cygwin など) 内で pear を実行しないことです。私は同じ問題を抱えていましたが、上記で提案されたパスの修正は役に立ちませんでした。Windows シェルに切り替えたところ、pear コマンドが期待どおりに機能しました。

于 2013-09-13T14:18:48.453 に答える