【问题标题】:Laravel Getting an error Undefined offset: 3Laravel 得到一个错误未定义的偏移量:3
【发布时间】:2018-10-26 15:52:12
【问题描述】:

我的 laravel 应用程序出现错误。错误指出未定义的偏移量:3。

控制器

        public function updateVisaDocuments($type, $details, $visa, $documents_id){
    $visas_documents_db = \App\VisaDocuments::where ( 'visa_id', $visa->id )->get();
    foreach($visas_documents_db as $document_db){
        $count=0;
        for($j = 0; $j < sizeof ( $documents_id ); $j ++) {
            if($document_db->id==$documents_id [$j]){
                $count++;
            }
        }
        if($count==0)
            $document_db->delete();
    }

    for($i = 0; $i < sizeof ( $type ); $i++) {
        if(!empty($type[$i])){
            if(!empty($documents_id[$i])){
                $visa_documents = \App\VisaDocuments::where ( 'id', $documents_id[$i] )->first ();
            }else{
                $visa_documents=new VisaDocuments();
                $visa_documents->id=Uuid::generate ();
            }
                $visa_documents->type=$type[$i];
                $visa_documents->details=json_encode($details);
                $visa_documents->visa_id=$visa->id;
                if(!empty($documents_id[$i]))
                    $visa_documents->update();
                else
                    $visa_documents->save();
        }
    }
}
 foreach ($visa->documents as $documents){
    $i++;
    $det=json_decode($documents->details,true);
    $size_det=sizeof($det);
    $size_det_inside=sizeof($det[$i]);
    $k=0;

查看

<?php $size_det_inside = sizeof($det[$i]);?>
@for($j=0; $j< $size_det_inside; $j++)
@if($det[$i][$j] != '')
<input type="text" name="document_details[{{$i}}][]" value="{{$det[$i][$j]}}" />

@endif
@endfor 

我在这里遇到错误sizeof($det[$i]);(查看)。我想,结果是 json 格式,在我的视图文件中,我将它视为变量。

谁能帮我解决这个问题。

【问题讨论】:

  • 你没有在foreach之前向我们展示你的$i变量
  • 请发布您的完整控制器功能:)
  • 我已经发布了控制器功能
  • $i 应该在 foreach 之前重置 $i = 0; 因为你没有重置它,所以它变成了未定义的偏移量
  • 或者我可以添加异常或绕过错误吗?

标签: php laravel


【解决方案1】:

如果你的 php 版本是 7.0 或以上,你应该使用 count() 函数而不是 sizeof()。请使用计数()。

http://php.net/manual/en/function.sizeof.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 2017-08-24
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 1970-01-01
    • 2021-07-12
    相关资源
    最近更新 更多