我正在尝试使用循环来从表中提取所有行,并将每行更改为字符串然后传递给数组。这是我目前正在处理的脚本。
PHP:
function toggleLayers(){
$toggleArray = array($toggle);
for($i=0;$i<$group_layer_row;$i++){
$toggle=mb_convert_encoding(mssql_result ($rs_group_layer, $i, 0),"UTF-8","SJIS")."_".mb_convert_encoding(mssql_result ($rs_group_layer, $i, 1),"UTF-8","SJIS");
return $toggleArray($toggle);
}
}
现在它只返回一个字符串而不传递给数组。一直在寻找,似乎找不到任何地方或任何人可以用简单的英语向我解释这一点。
希望你能提供帮助。感谢
答案 0 :(得分:1)
我不知道你的例子中的变量是什么,但是如果你想循环一个数组并改变它的内容,我就是这样做的:
$myArray = array( 'thing', 'thing2' );
// the ampersand will pass by reference, i.e.
// the _Actual_ element in the array
foreach( $myArray as &$thing ){
$thing .= " - wat?!";
}
print_r( $myArray );
会给你
[0] =>
'thing - wat?!'
[1] =>
'thing2 - wat?!'
答案 1 :(得分:0)
我认为您会将代码更改为以下内容:
$toggleArray = array();
for ($i = 0; $i < $group_layer_row; $i++) {
// push your string onto the array
$toggleArray[] = mb_convert_encoding(mssql_result($rs_group_layer, $i, 0), "UTF-8", "SJIS") . "_" . mb_convert_encoding(mssql_result ($rs_group_layer, $i, 1), "UTF-8", "SJIS");
}
return $toggleArray;