Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

सामान्य त्रुटि:क्लास कंस्ट्रक्टर को कॉल नहीं कर सका'

जैसा कि दस्तावेज़ीकरण में बताया गया है:

public array PDOStatement::fetchAll ([ int $fetch_style [, mixed $fetch_argument [, array $ctor_args = array() ]]] )

ctor_args

Arguments of custom class constructor when the fetch_style parameter is PDO::FETCH_CLASS.

वही तर्क setFetchMode . के लिए उपलब्ध है

public bool PDOStatement::setFetchMode ( int $PDO::FETCH_CLASS , string $classname , array $ctorargs )

मैं इसे तदनुसार लागू करूंगा:

पहले एक प्रॉपर्टी जोड़ें $ctorArgs से \Core\Model null . के डिफ़ॉल्ट मान के साथ .वर्तमान setFetchMode . की जगह लेने के बाद कॉल

if (!is_array($this->ctorArgs)) throw new \Excpeption("\"ctorArgs\" must be of type array");
$stm->setFetchMode(PDO::FETCH_CLASS, get_called_class(), $this->ctorArgs);

और अंत में एक प्रॉपर्टी जोड़ें $ctorArgs से \App\Models\Admin\Photo array("picture") . के डिफ़ॉल्ट मान के साथ ।

यह कोड को बताएगा कि आपका कंस्ट्रक्टर पैरामीटर की अपेक्षा कर रहा है $चित्र

मैं एक संपत्ति के बजाय एक स्थिरांक का उपयोग करने के बारे में सोचूंगा, लेकिन यह इस बात पर निर्भर करता है कि आप इसे कैसे लागू करने का निर्णय लेते हैं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैशिंग रणनीति, कैशिंग कब व्यर्थ हो जाती है?

  2. स्क्रैच से पायथन फ्लास्क और MySQL का उपयोग करके एक वेब ऐप बनाना:भाग 5

  3. SQLSTATE [HY000] [2002] ऐसी कोई फ़ाइल या निर्देशिका नहीं

  4. SQLSTATE [42000]:सिंटैक्स त्रुटि या पहुँच उल्लंघन:1064 आपको अपने SQL सिंटैक्स — PHP — PDO में त्रुटि है

  5. MySQL क्वेरी सीमा और बड़े ऑफ़सेट के साथ हमेशा के लिए ले रही है