У меня самая странная проблема с моим расширением PHP.Когда я использую его из командной строки, вот так:
php -r '$mc = new MyClass("foo"); echo $mc->getField();'
выводит «foo», как и ожидалось.
Однако, если я пытаюсь сделать то же самое из моего индекса.php, я получаю сообщение об ошибке: класс не найден.
Fatal error: Class 'MyClass' not found in /var/www/html/index.php on line 12
Как это могло произойти?Я даже установил httpd для запуска под тем же пользователем, что и я, при запуске команды php -r.
Мой index.php выглядит так:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<p>
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$mc = new MyClass("foo");
echo $mc->getField();
?>
</p>
</body>
</html>
Часть php моегоhttpd.conf выглядит так:
# PHP Configuration for Apache
#
# Load the apache module
#
LoadModule php5_module modules/libphp5.so
#
# Cause the PHP interpreter handle files with a .php extension.
#
<Files *.php>
SetOutputFilter PHP
SetInputFilter PHP
LimitRequestBody 9524288
</Files>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
И, очевидно, мой php.ini настроен правильно, потому что моя команда php -r работает.Что может быть причиной этой проблемы?