我有一个如下的代码,我不确定$ACTIVITYGROUPS[]有什么类型的数据变量,以及我如何读取它?
$ACTIVITYGROUPS[] = saprfc_table_read ($fce, "ACTIVITYGROUPS", $i);当我做print_r(saprfc_table_read ($fce, "ACTIVITYGROUPS", $i);时,我得到了一堆没有任何分隔符的数组,并且不确定如何提取数据。谁能告诉我在上面的句子中它是做什么的?
以下是print_r(saprfc_table_read ($fce, "ACTIVITYGROUPS", $i);结果给我的结果:
Array (
[AGR_NAME] => Y:SECURITY_DISPLAY
[FROM_DAT] => 20080813
[TO_DAT] => 99991231
[AGR_TEXT] => Security Display - Users & Roles
[ORG_FLAG] => C
)
Array (
[AGR_NAME] => Y:SECURITY_ADMIN_COMMON
[FROM_DAT] => 20080813
[TO_DAT] => 99991231
[AGR_TEXT] => Security Administrator
[ORG_FLAG] => C
)
Array (
[AGR_NAME] => Y:LOCAL_TRANSPORT
[FROM_DAT] => 20090810
[TO_DAT] => 99991231
[AGR_TEXT] => Transport into target client - DEV system only
[ORG_FLAG] =>
)发布于 2011-08-04 05:14:20
[]表示push -将给定的参数作为新元素放在数组的末尾。这意味着$ACTIVITYGROUPS是一个数组*。
$arr = array();
$arr[] = 1; // Put 1 in position 0
$arr[] = "a"; // Put "a" in position 1
$arr[] = array() // Put a new, empty array in position 2如PHP文档所述,array_push与[]具有相同的效果。
*如果不是数组,使用[]会出现语法错误:
警告:不能在第4行
上的test.php中将标量值用作数组
发布于 2011-08-04 05:20:49
在许多语言中,[]表示法代表一个数组。与php的array_push()相同:它将一个元素推入到以[]结尾的变量中。
如果变量为空,您可以将方括号视为数组的声明。
例如,同样的推送符号也适用于Javascript。当像$var[] = 'a';一样使用它时,发生的情况与我上面所说的array_push()是一样的。只需找到数组中的下一个位置,并在那里添加您的值。
可以使用for、foreach、while、do while遍历数组,还可以使用print_r()或var_dump()函数检查数组的内容。
发布于 2011-08-04 05:16:13
我该如何阅读它?
因为saprfc_table_read已经返回了一个数组,所以$ACTIVITYGROUPS将是一个数组的数组([]在数组$ACTIVITYGROUPS中创建一个新的数组元素)。要阅读它,您可以使用foreach遍历它:
$ACTIVITYGROUPS[] = saprfc_table_read ($fce,"ACTIVITYGROUPS",$i);
foreach ($ACTIVITYGROUPS as $group) {
echo $group['AGR_NAME']; // echos Y:SECURITY_DISPLAY on first iteration
echo $group['FROM_DAT']; // echos 20080813 on first iteration
// and so on...
}https://stackoverflow.com/questions/6933345
复制相似问题