public function update($table, $where = array(), $data_arr = array()){
print_r($data_arr);
$adapter = $this->tableGateway->getAdapter();
$projectTable;
if($table != null){
$projectTable = new TableGateway($table, $adapter);
}else{
$projectTable = new TableGateway('account_master', $adapter);
}
echo "158";
try {
echo "123";
$rowset = $projectTable->update(function(Update $update) use ($where, $data_arr) {
$update->set(array('statement_no' => '01010'));
$update->where($where);
echo $update->getSqlString();
});
} catch (\Exception $e) {
print_r($e);
}
print_r($rowset);
die();
}
मेरा आउटपुट प्रिंट: 158123 यह मुझे सेट () फ़ंक्शन में पास सरणी देता है जिसे मैं पहले से ही तर्क के रूप में पास करता हूं। मैंने ऑब्जेक्ट को सरणी में बदलने की कोशिश की है ((arrya) $ objetc) लेकिन यह मेरे लिए काम नहीं कर रहा है।
[10-Jul-2017 05:11:34 America/Denver] PHP Catchable fatal error: Argument 1 passed to Zend\Db\Sql\Update::set() must be of the type array, object given, called in /home2/flywing1/vendor/zendframework/zend-db/src/TableGateway/AbstractTableGateway.php on line 336 and defined in /home2/flywing1/vendor/zendframework/zend-db/src/Sql/Update.php on line 93
1
Maulik Patel
10 जुलाई 2017, 14:33
2 जवाब
सबसे बढ़िया उत्तर
आप ऐसा Zend\Db\Sql\Update
ऑब्जेक्ट लागू करके कर सकते हैं। आप उस वस्तु को TableGateway
का उपयोग करके बना सकते हैं। आपको अपने मॉडल में निम्नलिखित करने में सक्षम होना चाहिए
public function update($set, $where)
{
// Here is the catch
$update = $this->tableGateway->getSql()->update();
$update->set($set);
$update->where($where);
// Execute the query
return $this->tableGateway->updateWith($update);
}
2
unclexo
10 जुलाई 2017, 19:17
इसे आज़माएं, मैं उन्हीं मुद्दों के साथ था, मैंने इसके साथ प्रयास किया, और यह काम कर गया।
$rowset = $projectTable->update(array('statement_no' => '01010'), $where);
2
Gautam Rai
10 जुलाई 2017, 14:45
संबंधित सवाल
नए सवाल
php
PHP एक व्यापक रूप से उपयोग किया जाता है, उच्च-स्तरीय, गतिशील, वस्तु-उन्मुख, और व्याख्या की गई स्क्रिप्टिंग भाषा मुख्य रूप से सर्वर-साइड वेब विकास के लिए डिज़ाइन की गई है। PHP भाषा के बारे में सवालों के लिए इस्तेमाल किया।