Php 在for循环中访问DB列数据(当名称末尾有$I时,它不起作用)
我想我的问题可能相当简单,但我无法解决 我有一个具有类似列名的自定义DB表。列之间的差异是最后的数字,所以我们有name12和name13。但同时,我们有名字21,名字22,名字23等等 我在for循环中使用for循环来检索特定列的数据。 但是,以下代码不起作用Php 在for循环中访问DB列数据(当名称末尾有$I时,它不起作用),php,database,wordpress,for-loop,Php,Database,Wordpress,For Loop,我想我的问题可能相当简单,但我无法解决 我有一个具有类似列名的自定义DB表。列之间的差异是最后的数字,所以我们有name12和name13。但同时,我们有名字21,名字22,名字23等等 我在for循环中使用for循环来检索特定列的数据。 但是,以下代码不起作用 for($i=0; $i<10; $i++) { echo('<table>'); for($j=0; $j<10; $j++) { echo('<tr>'); $fi
for($i=0; $i<10; $i++)
{
echo('<table>');
for($j=0; $j<10; $j++)
{
echo('<tr>');
$field_name = $user_routines[$i]->exercise_name.($i+1).($j+1);
echo('<td>' . $field_name . '</td>');
echo('</tr>');
}
}
for($i=0;$iexercise\u name.($i+1)。($j+1);
回声(“.$field_name.”);
回声(“”);
}
}
除此之外,我还尝试了以下方法:
for($i=0; $i<10; $i++)
{
echo('<table>');
for($j=0; $j<10; $j++)
{
echo('<tr>');
echo('<td>' . $user_routines[$i]->(exercise_name . ($i+1) . ($j+1)) . '</td>');
echo('</tr>');
}
}
for($i=0;$i(练习名($i+1)。($j+1));
回声(“”);
}
}
但它也不起作用
Ps1:$user\u例程
是一个数组,包含特定用户的“我的表”行
谢谢!=]试试看
$tmp1 = ($i+1);
$tmp2 = ($j+1);
$id = "$tmp1"."$tmp2";
echo '<td>' . $user_routines[$i]->{'exercise_name'.$id} . '</td>';
$tmp1=($i+1);
$tmp2=($j+1);
$id=“$tmp1”。$tmp2”;
echo'.$user_例程[$i]->{'exercise_name'.$id}';
假设在数组中,$user_例程[$i]是其中的一个对象。
请粘贴一小块数组结构你的数据库中没有ID吗?名称#…听起来你的数据库设置错误是的,我有。数据库或表没有问题。事实上,如果我只使用
$user\u例程[$I]->练习_name11
效果很好,但由于我有许多类似的字段,因此最好使用for循环来填充页面字段。name#在我看来是错误的,但它是你的生命。更具体地了解你所说的“不工作”是什么意思会有所帮助实际发生了什么?一般来说,您需要使用来以这种方式引用对象属性。@不要说“它不工作”,我的意思是它不返回任何内容。更具体地说,我的语法可能是错误的。如果我写echo($user\u routines[$I]->exercise\u name11)
它确实返回了我想要的值,但正如我上面所说的,我有很多这样的值,所以我试图用类似的方法得到相同的结果:echo($user_routines[$I]->{'exercise_name.($I+1)。($j+1)};
但是,当我重新加载页面时,那里什么都没有。这里是它的一部分:数组(6){[0]=>对象(stdClass)#506(295){[“ID”]=>string(1)“1”[“例程名称”]=>string(9)“DB测试1”[“例程类型”]=>string(7)“bulking”[“例程分割”]=>string(1)“1”[“nameday1”]=>string(17)“胸部和三头肌”[“nameday2”]=>string(0)”[“nameday3”=>string(0)”[“nameday4”=>string(0)”[“nameday5”=>string(0)”[“nameday6”]=>string(0)“[“exercise\u-name11”]=>string(0)“[“exercise\u-sets11”]=>string(1)“0”[“exercise\u-rest11”]=>string(1)“0”[“exercise\u-name12”]这就是我用“var\u-dump”得到的结果