我有一个代码如下,我不确定什么类型的数据变量$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] =>
)
答案 0 :(得分:26)
[]
表示 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中使用标量值作为数组
答案 1 :(得分:3)
在许多语言中,[]
表示法代表数组。
与php的array_push()
相同:它会在最后有[]
的变量中推送一个元素。
如果变量为null,则可以将方括号视为数组的声明。
例如,同样的推送符号适用于Javascript。当像$var[] = 'a';
一样使用时,发生的情况与我上面谈到的array_push()
相同。只需找到数组中的下一个位置,然后添加您的值。
可以使用for
,foreach
,while
,do while
遍历数组,您可以使用print_r()
或var_dump()
检查其内容功能
答案 2 :(得分:1)
我该怎么看?。
由于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...
}
答案 3 :(得分:0)
这是一个数组,但是你输出的结果表明你的嵌套数组没有键。我确定他们有默认密钥0,1,2,3,4 ......等等,但如果你想通过任何有意义的方式识别它们,我建议调整数组中数据的键。
print_r($ACTIVITYGROUPS); //this should output the whole array
print_r($ACTIVITYGROUPS[0]); //this should output just the first element of the array, which is also an array
//now you have an 'address' for the array that you understand, now lets output one of the values
foreach($ACTIVITYGROUPS as $key => $item){
echo $item['ARG_NAME']; // this will output the ARG NAME from each of the arrays, in order
}