php - 控制器中的非法字符串偏移“antrian_seminggu”(codeigniter)
问题描述
我在控制器中的变量“antrian_seminggu”中收到错误的非法字符串偏移。你能告诉我什么问题。之前谢谢。
我的控制器
public function antrian_seminggu()
{
$tahun = date('Y');
$bulan = date('m');
$tanggal = date('d');
$format = $tahun.'-'.$bulan.'-'.$tanggal;
$seminggu = abs(6*86400);
$awal = strtotime($format);
$akhir = strtotime($format)+$seminggu;
for($i=$awal; $i <=$akhir;$i+=86400)
{
$data=date('Y-m-d', $i);
$this->db->select('p.nama as nama_pasien,p.alamat as alamat_pasien, pen.id_pendaftaran as id,pen.tanggal_periksa as tgl, l.nama_layanan as layanan_pasien, pen.nama_detail_layanan as detail_layanan, pen.biaya as biaya_total, d.nama as nama_dokter,pen.status as stat, pen.no_antrian as antrian');
$this->db->from('pasien p, pendaftaran pen, layanan l, dokter d');
$this->db->where('p.NIK=pen.NIK');
$this->db->where('pen.id_layanan=l.id_layanan');
$this->db->where('l.id_dokter=d.id_dokter');
$this->db->where('pen.tanggal_periksa',$data);
$this->db->order_by('pen.tanggal_periksa','ASC');
$this->db->order_by('d.nama','ASC');
$this->db->order_by('pen.no_antrian','ASC');
$query=$this->db->get();
$data['antrian_seminggu']=$query;
$this->load->view('admin/antrian_data_seminggu',$data);
}
}
我的观点
<?php
$no=0;
foreach ($antrian_seminggu->result() as $dat)
{
?>
解决方案
illegal string offset warning
array
未正确设置时出现。这可能是由于多种原因。我正在编写下面的更正代码,必要时会提到注释。看看对你有没有帮助。
控制器
public function antrian_seminggu()
{
$tahun = date('Y');
$bulan = date('m');
$tanggal = date('d');
$format = $tahun.'-'.$bulan.'-'.$tanggal;
$seminggu = abs(6*86400);
$awal = strtotime($format);
$akhir = strtotime($format)+$seminggu;
for($i=$awal; $i <=$akhir;$i+=86400)
{
$date = date('Y-m-d', $i);
$this->db->select('p.nama as nama_pasien,p.alamat as alamat_pasien, pen.id_pendaftaran as id,pen.tanggal_periksa as tgl, l.nama_layanan as layanan_pasien, pen.nama_detail_layanan as detail_layanan, pen.biaya as biaya_total, d.nama as nama_dokter,pen.status as stat, pen.no_antrian as antrian');
$this->db->from('pasien p, pendaftaran pen, layanan l, dokter d');
$this->db->where('p.NIK=pen.NIK');
$this->db->where('pen.id_layanan=l.id_layanan');
$this->db->where('l.id_dokter=d.id_dokter');
$this->db->where('pen.tanggal_periksa',$date);
$this->db->order_by('pen.tanggal_periksa','ASC');
$this->db->order_by('d.nama','ASC');
$this->db->order_by('pen.no_antrian','ASC');
$query=$this->db->get()->result(); // complete the query here
$data['antrian_seminggu'][] = $query; // you probably want an array here otherwise the previous value will be overwritten by current value
}
$this->load->view('admin/antrian_data_seminggu', $data); // you'd want to load the view only once, so it should be outside the loop.
}
看法
<?php
$no=0;
foreach ($antrian_seminggu as $dat)
{
var_dump($dat); echo '<br>'; // returns all the data
}
?>
推荐阅读
- internet-explorer-11 - 强制 IE11 以 64 位启动我的弹出式站点
- php - 使用 PhpSpreadsheet (Mac) 找不到类 Zip 存档
- xslt - 任何将 Birt 引擎 .rptdesign 文件转换为 XSLT 格式的工具
- php - 如果 $_POST 值仍然相同,则 PHP 表单拒绝发送
- android - 显示应用程序图标徽章的 Android 权限
- java - Permission Denial:打开未从 UID 1000 导出的提供程序
- c++ - C++ cout 格式化
- python - 已知值的线性插值(不填充 Nan)
- python - 如何根据特定列中的值删除 Pandas DataFrame 中的重复行?
- jsf - 如果在 JSF 表单中不满足某些条件,则显示对话框窗口