Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Can';t使用Zend_Db_Table_行中的createRow_Php_Zend Framework_Model_Insert - Fatal编程技术网

Php Can';t使用Zend_Db_Table_行中的createRow

Php Can';t使用Zend_Db_Table_行中的createRow,php,zend-framework,model,insert,Php,Zend Framework,Model,Insert,我有一个Model\u User类,它正在扩展Zend\u Db\u Table\u行,但是当我尝试插入这样一行时: $user = new Model_User(); $data = array( 'user_login' => $form->getValue('username'), 'user_password' => $this->saltPassword($form->getValue('password'

我有一个
Model\u User
类,它正在扩展
Zend\u Db\u Table\u行
,但是当我尝试插入这样一行时:

    $user = new Model_User();

    $data = array(
        'user_login' => $form->getValue('username'),
        'user_password' => $this->saltPassword($form->getValue('password')),
        'user_email' => $form->getValue('email')
    );

    $newUser = $user->createRow($data);
我收到一个错误:
发生了一个错误,应用程序错误
(实际上,有人知道如何获得更清晰的错误信息吗?这些信息非常模糊)

我的模型类如的解决方案中所述。(因此我还有一个
Model\u User\u Table
类,它扩展了
Zend\u Db\u Table\u Abstract


有什么想法吗?

方法
createRow
是为
Zend\u Db\u Table\u Abstract
定义的,而不是为
Zend\u Db\u Table\u Row\u Abstract
定义的。只需将代码更改为

$user = new Model_User_Table();
$newUser = $user->createRow($data);

为了获得更清晰的错误信息,将Zend置于开发模式。默认的生产行为是使错误消息静音,以使攻击者更难使用您的应用程序生成的故障信息来攻击您。我如何切换到开发模式?我的应用程序中有几个“类别”。谢谢你的帮助!但是我的Model_User应该表示我的User表中的一行,而不是我的整个表(我发布的链接就是这么说的)Zend_Db_table_row_Abstract与createRow有类似的方法吗?谢谢Zend_Db_Table_Abstract::createRow()返回Zend_Db_Table_Row_Abstract的一个实例,因此您的$newUser对象实际上代表一行。啊,我明白了!还有一个问题你可以帮我:在这种情况下,我怎样才能让$newUser成为Model_用户对象,这样我就可以在这个对象上调用我的用户方法了。正如你所说的,它们是相同的类型,但我想不出怎么做..只需将这个:protected$\u rowClass='Model\u User'添加到您的Model_User_表类中即可;