PHP数组.将表中的每一行数据更改为字符串,然后传递给数组


PHP Array. Change every row data in table to a string then pass to array

我试图使用循环从表中拉出所有行,并将每一行更改为字符串,然后传递给数组。这是我目前正在编写的脚本。

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);
    }
}    

现在它只返回一个字符串而不传递给数组。一直在寻找,似乎找不到任何地方或任何人可以用简单的英语向我解释这个问题。

希望你能帮忙。由于

我不知道在你的例子中变量是什么,但是如果你想循环通过一个数组并改变它的内容,下面是我怎么做的:

$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?!'

我想你应该把你的代码改成这样:

$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;