Hola:
Estoy teniendo muchos problemas con los malditos namespace y los use.
Tengo la siguiente estructura en una carpeta llamada Restler:
/restler que contiene:
v1/
vendor/
index.php
/v1 contiene:
Say.php
Eventos.php
/vendor contiene mas archivos irrelevantes (creo)
Y FUERA de la carpeta Restler existe este archivo IMPORTANTE: scriptbueno.php
El contenido de index.php:
Código PHP:
require_once 'vendor/restler.php';
use LuracastRestlerDefaults;
use LuracastRestlerRestler;
Defaults::$useUrlBasedVersioning = true;
$r = new Restler();
$r->setAPIVersion(2);
$r->addAPIClass('Say');
$r->addAPIClass('eventos');
$r->handle();
El contenido de SAY.php:
Código PHP:
namespace v1;
require_once '../scriptbueno.php'; // Si pongo ../../scriptbueno.php Que digo yo es como se accedería de toda la vida, pues me dice que no lo encuentra :-S, no lo entiendo
use LuracastRestlerRestException;
class Say {
function hello($to='world') {
$user = JFactory::getUser();
echo "Usuario " . $user->username . " con id: " . $user->id . " conectado a Joomla";
return "Hello $to!";
}
function hi($to) {
if (!is_numeric($to))
throw new RestException(400, 'not a valid number');
return "Hi $to!";
}
}
Scriptbueno.php contiene:
Código PHP:
define( '_JEXEC', 1 );
define('JPATH_BASE', '\joomla2_5' );
define( 'DS', DIRECTORY_SEPARATOR );
define( 'JDEBUG', 'none');
require( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require( JPATH_LIBRARIES .DS.'import.php');
require( JPATH_BASE .DS.'configuration.php' );
require( JPATH_BASE .DS. 'libraries' . DS. 'joomla' .DS. 'application' .DS. 'component' .DS. 'helper.php');
$mainframe = JFactory::getApplication('site');
echo "todo ok";
Y este es el error que me aparece:
PHP Fatal error: Class 'v1\JFactory' not found in C:\xampp\htdocs\Restler31\v1\Say.php on line 12
Yo ya no se que estoy haciendo mal