Estoy dando vueltas ha mi las librerias de mi proyecto ya que queria hacer un refactoring para pasar mis utilidades al estandar PSR-4 y usarlo con composer, y de esta forma poder usarlo en otros proyectos.
Estructura:
Código:
composer.json del proyecto|proyecto |vendor |minombre |paquete |src MiClase.php
Código:
composer.json de mi paquete... "autoload": { "psr-4": { "Minombre\\Paquete\\": "src" } ...
Código:
fcihero de clase:... "require": { "php": ">=5.3.9" }, "autoload": { "psr-4": { "Minombre\\Paquete\\": "minombre/paquete_dir/" } ...
Código:
Fichero de pruebas. Ya en Phpstomr me ocurre algo curioso. Cuando escribo el conoce en el autocompletado la clase, pero al dar intro la muestra como problema.<?php namespace Minombre\Paquete\MiFoo; class MiFoo { protected $variable; public function __construct($variable) { $this->variable = $variable; } public function getVariable() { return $this->variable; }
test.php
Código:
<?php use Minombre\Paquete\MiFoo; // MiFoo::myText(); //tampoco funciona pues muestra error de clase no localizada $variable = "Hola Mundo"; $request = new MiFoo($variable); var_dump($request->getVarable());
Ya no se por donde seguir... me encuentro estupido.
Composer si me reconoce mi paquete de echo añadio la estructura en
Código:
|app |vendor |composer autoload_psr4.php
Código:
Un saludo. return array( ..., 'Minombre\\Paquete\\' => array($baseDir . '/minombre/paquete_dir/src'), );