О, это не должно было закончиться так, но я нашел решение с помощью Howto Install с документацией Pecl в Code Google:
- Установите LibYAML, используя ваш любимый метод. Например, на машине с Ubuntu
sudo apt-get install libyaml-dev
вы получите то, что вам нужно. sudo pecl install yaml-beta
- Отредактируйте настройки php.ini и добавьте
extension=yaml.so
- Посмотрите, сработало ли это с
php --re yaml
Поскольку я работаю в Fedora, мне пришлось использовать немного другой подход:
# yum search yaml | grep -i php php-symfony-YAML.noarch : The Symfony YAML Component php-pecl-yaml.x86_64 : PHP Bindings for yaml php-symfony-yaml.noarch : Symfony Yaml Component php-symfony2-Yaml.noarch : Symfony2 Yaml Component php54-php-pecl-yaml.x86_64 : PHP Bindings for yaml php56-php-pecl-yaml.x86_64 : PHP Bindings for yaml syck.i686 : YAML for C, Python, and PHP syck.x86_64 : YAML for C, Python, and PHP syck-php.x86_64 : YAML module for php
Итак, я установил php-pecl-yaml.x86_64
:
# yum install php-pecl-yaml.x86_64
Я добавил строку в свой php.ini
файл, перезапустил apache на всякий случай, и теперь я получаю хороший вывод из:
# php --re yaml Extension [ <persistent> extension #16 yaml version 1.1.1 ] { - Dependencies { Dependency [ date (Optional) ] } - INI { Entry [ yaml.decode_binary <ALL> ] Current = '0' } Entry [ yaml.decode_timestamp <ALL> ] Current = '0' } Entry [ yaml.output_canonical <ALL> ] Current = '0' .../... Function [ <internal:yaml> function yaml_emit_file ] { - Parameters [5] { Parameter #0 [ <required> $filename ] Parameter #1 [ <required> $data ] Parameter #2 [ <optional> $encoding ] Parameter #3 [ <optional> $linebreak ] Parameter #4 [ <optional> array $callbacks ] } } } }