sql >> Base de Datos >  >> RDS >> Mysql

PHP:obtención de stmt preparado en clase:clase de error fatal no encontrada

Si su Category class está en un espacio de nombres, deberá pasar un nombre de clase completo a fetchAll .

En este momento, PDO está tratando de acceder a la clase Category en el espacio de nombres raíz. no existe Debe informar a PDO sobre el espacio de nombres:

$stm->fetchAll(\PDO::FETCH_CLASS, 'Vendor\\Package\\Category');

O use un __NAMESPACE__ constante si eso lo hace más fácil (y es correcto):

$stm->fetchAll(\PDO::FETCH_CLASS, __NAMESPACE__ . '\\Category');

O, aún mejor, use PHP 5.5+ ::class constante para obtener el nombre de clase completo.

use Acme\Package\Category;
$stm->fetchAll(\PDO::FETCH_CLASS, Category::class);