Php 循环计数器不能正确递增
我的foreach循环似乎有问题。我试图使用foreach循环将记录插入数据库表,但它不能正常工作。不是向每个表添加3条记录,而是向每个表添加1条记录。此外,添加到每个表中的每个记录都应位于第一个表中 下面是我用来创建表的tableinfo数据库表中的数据Php 循环计数器不能正确递增,php,codeigniter,Php,Codeigniter,我的foreach循环似乎有问题。我试图使用foreach循环将记录插入数据库表,但它不能正常工作。不是向每个表添加3条记录,而是向每个表添加1条记录。此外,添加到每个表中的每个记录都应位于第一个表中 下面是我用来创建表的tableinfo数据库表中的数据 displayname dbname category distance distance_id Male 40 to 49 10KM M40_Male40t
displayname dbname category distance distance_id
Male 40 to 49 10KM M40_Male40to4910KM M40 10KM 3
Male 40 to 49 21KM M40_Male40to4921KM M40 21KM 2
Male 40 to 49 42KM M40_Male40to4942KM M40 42KM 1
下面是我正在努力工作的代码:
$tabledata = $this->db->get('tableinfo');
$i = 0;
$_temp = array();
foreach($tabledata->result() as $row) {
$data[$i] = $this->callAPI("lateststandings&records=3&category=" . $row->category . "&distance=" . $row->distance_id);
array_push($_temp, $row->dbname);
$i++;
}
$j = 0;
foreach($data[$j]['Records']['Record'] as $record) {
$record['FirstName'] .= " " . $record['LastName'];
$this->db->replace($_temp[$j], $record);
$j++;
}
我确信我遇到的问题是$I和$j计数器变量,但我不确定哪里出了问题。计数器变量似乎没有正确地递增。让我们试着用这种方式递增
$tabledata = $this->db->get('tableinfo');
$data = [];
$_temp = array();
foreach($tabledata->result() as $row) {
$data[] = $this->callAPI("lateststandings&records=3&category=" . $row->category . "&distance=" . $row->distance_id);
array_push($_temp, $row->dbname);
}
foreach($data as $key => $arr) {
foreach ($arr['Records'] as $record)
{
$record['FirstName'] .= " " . $record['LastName'];
$this->db->replace($_temp[$key], $record);
}
}
如何删除计数器并使其成为这样
$data[$i]=>$data[]
PHP将自动为数组分配键,因此您必须仔细考虑。在第二秒钟,foreach将其分为两部分foreach($arr数据)
和内部foreach($arr['Records']作为$record)
感谢您的帮助。因此,如果我理解正确,我会这样做:$data[$I]=>$data[]=$this->callAPI(“最新排名和记录=3&category=“.row->category.”和distance=“.row->distance\u id”);绝对完美!!!!非常感谢你的帮助,你不知道我为此挣扎了多久!非常感谢。