Jika Category
. Anda kelas ada di namespace, Anda harus memasukkan nama kelas yang sepenuhnya memenuhi syarat ke fetchAll
.
Saat ini, PDO sedang mencoba untuk mengambil ke dalam kelas Category
di ruang nama root. Itu tidak ada. Anda perlu memberi tahu PDO tentang namespace:
$stm->fetchAll(\PDO::FETCH_CLASS, 'Vendor\\Package\\Category');
Atau gunakan __NAMESPACE__
konstan jika itu membuatnya lebih mudah (dan benar):
$stm->fetchAll(\PDO::FETCH_CLASS, __NAMESPACE__ . '\\Category');
Atau, lebih baik lagi, gunakan ::class
PHP 5.5+ konstan untuk mendapatkan nama kelas yang sepenuhnya memenuhi syarat.
use Acme\Package\Category;
$stm->fetchAll(\PDO::FETCH_CLASS, Category::class);