Mostrando entradas con la etiqueta Composer. Mostrar todas las entradas
Mostrando entradas con la etiqueta Composer. Mostrar todas las entradas

2020-10-12

Utilizar NAMESPACED en CakePHP 2.x y composer para proyecto viejo..

Quizas tenes proyectos viejos que fueron creado en CakePHP 2.x  y siguen funcionando y que por tiempo o costos no pudiste actualizar a CakePHP 3.x o 4.x como es mi caso. 


Con estos pasos vas a poder utilizar NAMESPACED  sin que de error, siempre y cuando tengas configurado tu sistema (CakePHP 2.x con Composer y PHP 5 >= 5.3.0) para poder crear código más robustos y aplicar mejores prácticas con patrones de diseños y poder hacer un mantenimiento más simple del sistema.


Paso 1): Modificar tu archivo composer.json agregando algo similar a esto.

"autoload": {
  "psr-4": {
    "Mylib\\": "app/Lib/Mylib/"
  }
}

Paso 2): Ejecuta el siguiente comando donde esta el archivos composer.json que modificaste.

composer dump-autoload

Paso 3): Crear tu class dentro de "app/Lib/Mylib" o SubCarpeta según el caso y como esta en el ejemplo.

<?php

// app/Lib/Mylib/Error/MyErrorHandler.php
namespace Mylib\Error;

class MyErrorHandler
{
    ........
}

Paso 4): Ejemplo de como utilizarlo dentro de un controller

<?php

App::uses('AppController', 'Controller');

use Mylib\Error\MyErrorHandler;

class UsersController extends AppController

{

    public $components = array('Paginator', 'Session', 'Flash');

    public function index()

    {

        $testDemo = new MyErrorHandler() ;
        $testDemo ->myTest1(__('Error EOM ;-]')) ;
        var_dump($testDemo ) ;

        $this->set('clientesReferidosNiveles', $this->Paginator->paginate());

    }

.....
.....
.....


Listo eso es todo para poder utilizar tus class y el load automático con  NAMESPACED.

Saludos y espero que le sea útil ;-)

2020-10-08

Como acceder a un repositorio privado utilizando Composer

Si su sitio incluye paquetes en un repositorio privado en su archivo composer.json, deberá generar un token en  Github   (o GitLab) y agregarlo a su archivo composer.json. Esto debe ubicarse debajo de la información del repositorio y requiere una declaración en su archivo. La configuración es la siguiente:

Para obtener más detalles sobre la creación de un token (OAuth) en Bitbucket, consulte  aquí  :

Bitbucket:

{     "require": {         "mi-vendor-usuario/mi-repositorio-privado": "master"     },     "repositories" : [         {             "type": "vcs",     "url":  "git@bitbucket.org:mi-vendor-usuario/mi-repositorio-privado.git"         }     ],     "config": {       "bitbucket-oauth": {      "bitbucket.org": {          "consumer-key": "mi-Key"          "consumer-secret": "mi-SecretKey" }        }    } }


Para obtener más detalles sobre cómo crear un token en Github, consulte  aquí  :  

Github:

{     "require": {         "mi-vendor-usuario/mi-repositorio-privado": "master"     },       "repositories" : [         {             "type": "vcs",             "url" : "git@github.com:mi-vendor-usuario/mi-repositorio-privado.git"         }     ],     "config": {       "github-oauth": {         "github.com": "miTokenGeneradoPorGithub"       }     } }

2015-11-10

Como utilizar Composer + CakePHP 2.x

Hola para utilizar Composer con CakePHP 2.x tenes que hacer lo siguiente en la consola.

$ cd app/ $ curl -s https://getcomposer.org/installer | php $ php composer.phar require --no-update opauth/opauth:dev-wip/1.0 opauth/twitter:dev-wip/1.0 $ php composer.phar config vendor-dir Vendor $ php composer.phar install

Alternativa
$ curl -s https://getcomposer.org/installer | php -d allow_url_fopen=On
  1. Entramos al directorio de nuestro proyecto
  2. Agrego la librería "opauth" a  modo de prueba
  3. Bajamos Composer si no lo tenemos en la maquina
  4. Configuramos Composer para guarda todo dentro de nuestra carpeta "app/Vendor" 
  5. Instalamos las librerias via Composer después de configurarlos para CakePHP
Entramos a nuestro archivo "app/Config/bootstrap.php" y le agregamos esto al final
App::import('Vendor', array('file' => 'autoload'));

Y para utilizarlos desde un controller como "UsersController.php" solo tenes que hacer
$Opauth = new Opauth\Opauth($config); $data = $Opauth->run();
Esto es un ejemplo con una libreria, pero es valido para cualquier que utilices con Composer dentro de CakePHP.

PD: Como crear un Alias a un ejecutable desde la consolar y permanetes
$ echo 'alias git="/usr/local/cpanel/3rdparty/bin/git"' >> ~/.bashrc && . ~/.bashrc
$ echo 'alias composer="php -d allow_url_fopen=On ~/composer.phar"' >> ~/.bashrc && . ~/.bashrc