Мы обновляем нашу кодовую базу для использования функциональности пространства имен, предоставленной в PHP-5.3 +
Раньше все наши файлы счастливо жили на веб-сервере в / htdocs / php, но теперь мы разделяем наши сценарии и помещаемнаши библиотеки PHP в / htdocs / php / lib /
В / htdocs / php / lib / у нас есть файл с именем Jira.php, которому мы дали пространство имен:
<?php
# Define a namespace for this library
namespace Jira;
function create_client($jira_url, $options)
{
global $client;
try
{
$client = new SoapClient($jira_url, $options);
}
catch (Exception $error)
{
echo $error -> getMessage() . "<br/><p style='color:red'> Could not connect to Jira </p>";
}
}
?>
Однако, когда мы пытаемся вызвать эту функцию из скрипта в / htdocs / php, мы получаем ошибку «класс не найден»:
PHP Fatal error: Class 'Jira\SoapClient' not found
Это происходит сбой при попытке создания объекта SoapClient.
Я подтвердил, что у меня установлен пакет php-soap в / usr / share / php / SOAP / и php_info ();показывает, что он включен и т. д.
Итак, вероятно, это проблема с соглашением о пространстве имен.Как мы можем включить этот класс без ошибки?
С уважением, нс