如何在打印数组值时解决非法字符串偏移错误?

时间:2017-06-20 07:45:16

标签: php codeigniter

我遇到了这个错误

  

遇到PHP错误

     

严重性:警告

     

消息:非法字符串偏移'公司'

     

文件名:sales / print_file.php

在我的控制器中

$data=array("invoice_no"=>$invoice_no,
    "phone"=>$phone,
    "date"=>$date,
    "att"=>$Att,
    "company"=>$company,
    "area"=>$body,
    "subtotal"=>$subtotal,
    "tax"=>$tax,
    "total"=>$total,
    );

    .
    .
    $result=$this->other_tasks_model->inserts($data);
    .
    .
    $data["item1"] = $data;
    .
    .
    if($result==true)
        {
        $this->_tpl_super_admin('sales/print_file', $data);//for template changes based on user login
     }
     else{
     _error handling_
     }

在我的模特中

public function inserts($data)
{
  $this->db->insert("invoice",$data);
  return $this->db->affected_rows() !=1 ? false:true;
}

在我看来

  <?php 
    if(isset($item1)){
      foreach($item1 as $row){;
        echo "<h2>".$row['company']."</h2>";
        echo $row['date']."<br>"; 
        echo "#".$row['invoice_no'];
  ?>

1 个答案:

答案 0 :(得分:0)

<?php 
  if(isset($item1)){
  foreach($item1 as $row){;
  echo "<h2>".$row['company']."</h2>";
  echo $row['date']."<br>"; 
  echo "#".$row['invoice_no'];
  ?>

因为你有一维数组

你不需要foreach循环

要么做两件事

  • 删除foreach部分

  • 您修改了设置为视图的$ data,以便您可以保留 的foreach

 $data[]= $data;(this will make it a 2 dimensional array)
$data["item1"] = $data;
.