• YII报错笔记:<pre>PHP Notice &#039;yiiaseErrorException&#039; with message &#039;Uninitialized string offset: 0&#039; in /my/test/project/iot/vendor/yiisoft/yii2/base/Model.php:778


    YII常见报错笔记

    报错返回的代码如下:

    <pre>PHP Notice 'yiiaseErrorException' with message 'Uninitialized string offset: 0' 
    
    in /my/test/project/iot/vendor/yiisoft/yii2/base/Model.php:778
    
    Stack trace:
    #0 /my/test/project/iot/vendor/yiisoft/yii2/base/Model.php(778): yiiaseErrorHandler->handleError(8, 'Uninitialized s...', '/my/test/projec...', 778, Array)
    #1 /my/test/project/iot/vendor/yiisoft/yii2/base/Model.php(354): yiiaseModel->activeAttributes()
    #2 /my/test/project/iot/vendor/yiisoft/yii2/db/ActiveRecord.php(455): yiiaseModel->validate(NULL)
    #3 /my/test/project/iot/vendor/yiisoft/yii2/db/BaseActiveRecord.php(635): yiidbActiveRecord->insert(true, NULL)
    #4 /my/test/project/iot/common/models/Order.php(243): yiidbBaseActiveRecord->save()
    #5 /my/test/project/iot/frontend/controllers/OrderController.php(219): commonmodelsOrder->createOrder(Array)
    #6 [internal function]: frontendcontrollersOrderController->actionOrderoncecreate()
    #7 /my/test/project/iot/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
    #8 /my/test/project/iot/vendor/yiisoft/yii2/base/Controller.php(156): yiiaseInlineAction->runWithParams(Array)
    #9 /my/test/project/iot/vendor/yiisoft/yii2/base/Module.php(523): yiiaseController->runAction('orderoncecreate', Array)
    #10 /my/test/project/iot/vendor/yiisoft/yii2/web/Application.php(102): yiiaseModule->runAction('order/orderonce...', Array)
    #11 /my/test/project/iot/vendor/yiisoft/yii2/base/Application.php(380): yiiwebApplication->handleRequest(Object(yiiwebRequest))
    #12 /my/test/project/iot/frontend/web/index.php(18): yiiaseApplication->run()
    #13 {main}</pre>
    

     原因:这里明显提示是模型Model出错,所以根据报错信息分析。

               第一步:找到相应调用的模型检查,

               第二步:查看报错提(这个错误是:Uninitialized string offset: 0  未初始化字符串偏移量:0)。

     最后分析上面两步得出,我在模型的验证规则里定义了一个空字段(‘’),如下图所示

    因为yii的验证规则是对写入每个字段都做验证(没有做空判断),我数据表又没有这个字段,所以就会报错。

    结论:如果报错代码类似以上的,检查下自己的验证规则字段是否有和数据表不一样的字段。

    错误代码分析总结:

  • 相关阅读:
    Zlib编译
    最新Webstrom, Idea 2019.2.3 的激活
    图像理解与深度学习开篇
    C# 反射(Reflection)
    SpringMVC中使用forward和redirect进行转发和重定向以及重定向时如何传参详解
    Navicat for Oracle中如何使用外键
    【数据库】主键,外键,主表,从表,关联表,父表,子表
    onclick事件没有反应的五种可能情况
    button小手设置 css的cursor
    Spring MVC F5刷新问题
  • 原文地址:https://www.cnblogs.com/ccw869476711/p/9504834.html
Copyright © 2020-2023  润新知