我有两个数组,第一个是在控制器上声明其数据的数组,第二个是来自查询操作的数组。他们两个都不相干。让我们将它们命名为$ array1和$ array2。下面是我的控制器
$array1['status'] = 'admin';
$array1['name'] = 'John';
$this->load->model('mymodel');
$array2 = $this->mymodel->get_all_row();
$this->load->view('my_view', $array1, $array2);
让我们说$array2
有3个索引id
,name
,price
。
需要一些帮助。
答案 0 :(得分:0)
传递变量时,您需要在视图中访问该变量。使用array($ var1,$ var2);是有效的,但可能不是您想要达到的目标。 有关如何访问传递给视图的变量的详细文档,请参见Views。
尝试
void loop() {
if (digitalRead(boton) == LOW) {
WiFiManager wifiManager;
wifiManager.resetSettings();
Serial.println("Wi-Fi RESETEADO");
delay(2000);
}
Serial.println("Mandando comandos a los sensores");
sensorDS18B20.requestTemperatures();
int promedio = (sensorDS18B20.getTempCByIndex(0)+sensorDS18B20.getTempCByIndex(1))/2;
if (promedio > 28 ) {
Serial.println("SOBRETEMPERATURA! ABORTAR!");
digitalWrite(green, LOW);
bool state = digitalRead(red);
digitalWrite(red, !state);
delay(200);
}
else {
digitalWrite(red, LOW);
digitalWrite(green, HIGH);
if (promedio < 0) {
Serial.println("Sensor esta fallando!!");
digitalWrite(green, LOW);
digitalWrite(red, HIGH);
}
else {
if (digitalRead(green) == HIGH) {
Serial.println("TODO BIEN");
}
else{
digitalWrite(blue, LOW);
digitalWrite(red, LOW);
digitalWrite(green, HIGH);
}
}
}
Serial.println(promedio);
}
或
$data = $var1 + $var2;
答案 1 :(得分:0)
该视图仅接受两个参数。
数据通过数组或数组从控制器传递到视图 视图加载方法的第二个参数中的对象。这是 使用数组的示例:
$data = array(
'title' => 'My Title',
'heading' => 'My Heading',
'message' => 'My Message'
);
$this->load->view('blogview', $data);
视图的第三参数
第三个可选参数可让您更改 该方法,以便它以字符串形式返回数据,而不是发送数据 到您的浏览器。如果您要处理其中的数据,这将很有用。 某种方式。如果将参数设置为TRUE(布尔值),它将返回 数据。默认行为是false,它将其发送到您的浏览器。 如果要返回数据,请记住将其分配给变量:
$string = $this->load->view('myfile', '', TRUE);
因此,最重要的是您必须发送一个数组。现在,如果要传递两个数组的数据,则应将这些数组合并到一起,然后再传递合并的数组。
$merged_array = array_merge($array1, $array2);
$this->load->view('my_view', $merged_array);