Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Agregar atributos a un objeto PDOStatement

Estas en el tema de Agregar atributos a un objeto PDOStatement en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hice la prueba de agregarle nuevos atributos a un objeto del tipo PDOStatement y no me dio ningún problema. Pero quisiera saber si existe algúna ...
  #1 (permalink)  
Antiguo 27/10/2009, 11:08
Avatar de bng5  
Fecha de Ingreso: junio-2009
Ubicación: 127.0.0.1
Mensajes: 269
Antigüedad: 14 años, 10 meses
Puntos: 24
Agregar atributos a un objeto PDOStatement

Hice la prueba de agregarle nuevos atributos a un objeto del tipo PDOStatement y no me dio ningún problema.
Pero quisiera saber si existe algúna objeción "moral" para que no haga lo siguiente, o si me puede dar problemas en futuras versiones de PHP o en servidores con distinta instalación.

Código PHP:
<?php

class Clase {
  static function 
Listado($pagina 1$resultados_por_pagina 25)
   {
    
$DB DB::Conectar();// DB extiende de PDO
    /*
    Primero calculo:
       (int) $desde
       (int) $hasta
       (int) $total
       (int) $paginas
       (int) $pagina
       (int) $resultados_por_pagina
   */
    
$consulta $DB->query("SELECT * FROM tabla LIMIT ".$desde.", ".$hasta);
    
// Consulta es del tipo PDOStatement
    // y a continuación le agrego 4 atributos

    
$consulta->total $total;
    
$consulta->resultados_por_pagina $resultados_por_pagina;
    
$consulta->paginas $paginas;
    
$consulta->pagina $pagina;

    return 
$consulta;
  }
}

?>
Muchas gracias
  #2 (permalink)  
Antiguo 27/10/2009, 11:12
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Agregar atributos a un objeto PDOStatement

Es mejor que extiendas la clase y crees una clase que contenga el resultado, así evitas que en un futuro "deje" de funcionar la forma en que lo haces.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:36.