Получение PEAR для работы на XAMPP (стек Apache / MySQL в Windows)

Я пытаюсь установить Лаконика, приложение микроблогов с открытым исходным кодом на моем сервере разработки Windows с использованием XAMPP в соответствии с инструкции.

веб-сайт не может найти грушу и выдает следующие ошибки:

предупреждение: require_once (PEAR.функция PHP.require-once]: не удалось открыть поток: нет такого файла или каталога в C:xampplitehtdocslaconicalibcommon - ... php on line 31

фатальная ошибка: им require_once() [функция.require]: требуется неудачное открытие ' PEAR.php ' (include_path='.;xamppliteРНРгрушагруша') в C:xampplitehtdocslaconicalibcommon.php on line 31

  1. PEAR находится в C:xampplitephppear
  2. phpinfo() показывает мне, что путь включения .;xampplitephppear

что я делаю не так? Почему не включена папка PEAR?

7 ответов


вам нужно исправить ваш include_path системная переменная для указания правильного местоположения.

исправить редактирование . В этом файле вы найдете строку, которая говорит, "include_path = ...". (Вы можете узнать, что расположение php.ini, запустив phpinfo() на странице.) Исправьте часть строки, которая говорит:"\xampplite\php\pear\PEAR" на "C:\xampplite\php\pear". Не забудьте оставить двоеточия до и/или после линии на месте.

перезагрузите PHP, и вам должно быть хорошо идти. Чтобы перезапустить PHP в IIS вы можете перезапустить пул приложений, назначенный вашему сайту, или, еще лучше, перезапустить IIS все вместе.


Если вы используете портативную установку XAMPP и Windows 7, и, как у меня есть версия после того, как они удалили оболочку XAMPP с панели управления, ни один из предложенных ответов здесь не принесет вам много пользы, поскольку пакеты не будут установлены.

проблема с файлом config. Я нашел правильные настройки после большого количества проб и ошибок.

просто откройте окно команды в каталоге \xampp\php и запустите

pear config-set doc_dir :\xampp\php\docs\PEAR
pear config-set cfg_dir :\xampp\php\cfg
pear config-set data_dir :\xampp\php\data\PEAR
pear config-set test_dir :\xampp\php\tests
pear config-set www_dir :\xampp\php\www

вы хотите замените": "на фактическую букву диска, на котором работает ваш портативный диск в данный момент. К сожалению, это нужно сделать в любое время, когда эта буква диска изменяется,но он получил модуль, который мне нужен.


сначала я попробовал все другие ответы, но ни один из них не работал, поэтому я установил путь 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


в соответствии с пунктом 1, Ваш путь груша\c:\xampplite\php\pear

однако ваш путь указывает на \xampplite\php\pear\PEAR

помещая два один над другим, вы можете ясно видеть, что один слишком длинный:

c:\xampplite\php\pear\

\xampplite\РНР\груша\груша

ваш путь включения установлен на одну грушу слишком глубоко в грушевое дерево. Подпапка PEAR папки pear включает в себя компонент PEAR. Вам нужно отрегулировать ваш включите путь вверх на один уровень.

(вам не нужен c: Кстати, Ваш путь прекрасен, как есть, просто слишком глубокий)


попробуйте добавить букву диска:

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

также проверьте, что груша.php на самом деле есть, он может быть в \php\ вместо:

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

еще одна проблема такого рода: избегайте запуска pear в оболочке Unix (например, Git Bash или Cygwin) на машине Windows. У меня была та же проблема, и исправление пути, предложенное выше, не помогло. Переключился на оболочку Windows, и команда pear работает так, как ожидалось.


в Windows используйте в XAMPP оболочки (в панели управления XAMPP есть кнопка "Shell")

затем

cd php\pear

перейти к 'C:\xampp\php\pear'

введите

pear