php - 在 laravel 8 控制器中动态分配变量名的一部分
问题描述
我有一个数组,其中包含一些对应于不同传感器的测量值。这些测量值应存储在我的测量值表中。但我无法动态形成变量名。=> ${'请求->AI' 。'$ 计数器'};
有什么建议么?
$this->validateWith([
'RecorderName' => 'required|string',
'Time' => 'required|date',
'AI1' => 'required|float',
'AI2' => 'required|float',
'AI3' => 'required|float',
'AI4' => 'required|float',
'AI5' => 'required|float',
'AI6' => 'required|float']);
$recorderSenor = Recorder::where('name', substr($request->RecorderName, 0, -4))->with('getSensorsRelation')->get();
$counter =1;
foreach ($recorderSenor as $sensor) {
$measurement = new measurement();
$measurement->sensor_id = $sensor->id;
$measurement->value = ${'request->AI' . '$counter'};
$measurement->timestamp = $request->time;
$measurement->save();
$counter++;
}
解决方案
@DefinitelynotRafal 在评论中给出了正确答案。
echo '$counter'
给你$counter
(不是 $counter 的值,看这个)。尝试
$request->{'AI' . $counter}
推荐阅读
- postgresql - postgresql:在命令行中使用 psql 运行 SQL 命令
- sql - VBA - 将 SQL 表中的所有行导入 Excel
- oracle - 如何在线获取 Oracle SQL Worksheet 中未命名的 PL/SQL 块的输出?它显示 SET SERVEROUTPUT ON 的命令不受支持;
- html - 上一个 td 包含特定文本时如何选择 td 值
- java - android studio 中的 INSTALL_PARSE_MANIFEST_MALFORMED 错误
- mule - 在mule中访问forEach内部的变量
- charts - 谷歌图表不工作。如何解决?
- mysql - 需要帮助编写内部连接查询
- c# - Unity+VisualStudio:C#代码反汇编不可用?
- python - 无法使用 def clean() 运行表单集验证