php的phalcon框架的db怎样获取mysql执行过程中的错误信息?
大家讲道理
大家讲道理 2017-04-10 15:46:54
[PHP讨论组]

phalcon中的数据库操作类Phalcon\Db,Phalcon\Db\Adapter\Pdo, Phalcon\Db\Adapter\Pdo\Mysql。这几个我看了,都没有数据库执行出错后获取相应错误的方法,不知道是怎么回事,有没有知道的啊?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
PHP中文网
  1. 假设你已经注册"falsh"服务:
php/**
 1. Register the flash service with custom CSS classes
 */
$di->set('flash', function() {
    $flash = new \Phalcon\Flash\Direct(array(
        'error'   => 'alert alert-danger callout callout-danger',
        'success' => 'alert alert-success',
        'notice'  => 'alert alert-info',
        'warning' => 'alert alert-warning'
    ));

    return $flash;
});
  1. 以\Phalcon\Mvc\Model为例,在controller里面:
phpif ($Article->save()) {
                        $this->flash->success($Article->title . 'has been updated');
                    } else {

                        foreach ($Article->getMessages() as $message) {
                            $this->flashSession->error($message);
                        }

                        return $this->response->redirect($paginateUrl);
                        $this->view->disable();

                    }
  1. 当然,你也可以自定义验证信息:
phppublic function validation()
    {
      $this->validate(new Uniqueness(array(
          'field' => 'slug',
          'message' => 'The slug already exists in other articles,please modify the article title'
      )));
      if ($this->validationHasFailed() == true) {
          return false;
      }
    }
高洛峰

如果是working with models则

$robot       = new Robots();
$robot->type = "mechanical";
$robot->name = "Astro Boy";
$robot->year = 1952;
if ($robot->save() == false) {
    echo "Umh, We can't store robots right now: \n";
    foreach ($robot->getMessages() as $message) {
        echo $message, "\n";
    }
} else {
    echo "Great, a new robot was saved successfully!";
}

如果是phql则

$phql   = "INSERT INTO Cars VALUES (NULL, 'Nissan Versa', 7, 9999.00, 2012, 'Sedan')";
$result = $manager->executeQuery($phql);
if ($result->success() == false)
{
    foreach ($result->getMessages() as $message)
    {
        echo $message->getMessage();
    }
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号