2013-03-12 90 views
0

我有一个MSSQL查询,它选择满足特定条件的所有行。在PHP中,我想获取该数组,但随后我想将其转换为每行一个数组。所以如果我的查询返回3行,我想有3个独特的数组,我可以使用。MSSQL返回多个行到数组中,每行分解成一个数组

我不知道如何去做这件事。任何帮助将不胜感激!

谢谢,弥敦道


编辑:

$query = "SELECT * FROM applicants WHERE applicants.user_id ='{$_SESSION['user_id']}'"; 
$query_select = mssql_query($query , $connection); 
if (mssql_num_rows($query_select) == 2){ 
     $message = '2 students created successfully'; 
} 

$i = 0; 
while($row = mssql_fetch_array($query_select)) { 
    $student.$i['child_fname'][$i] = $row['child_fname']; 
     $student.$i['child_lname'][$i] = $row['child_lname']; 
    $i++; 
} 
    $query_array1 = $student0; 
$query_array2 = $student1; 

你会从上面的代码我期待着返回两行通知。现在,我想采取这两行,并从结果中创建两个数组。我尝试使用下面给出的解决方案。也许我的语法不正确,或者我不明白如何正确实施他的解决方案。但任何帮助将不胜感激。

+0

我想你可以[复制数组对象](http://stackoverflow.com/questions/1532618/is-there-a-function-make-a-copy-of-a-php-array-to-another)并删除你不需要的行。 ..但为什么不只是参考[迪的指数不同的行](http://stackoverflow.com/questions/10760389/accessing-two-dimensional-arrays-php)? – xQbert 2013-03-12 00:27:29

+0

我需要返回所有行,但我需要将它们作为单独的数组使用,而不是一个大数组。 – Nathan 2013-03-12 00:30:28

回答

0
$query = mssql_query('SELECT * FROM mytable'); 
$result = array(); 
if (mssql_num_rows($query)) { 
    while ($row = mssql_fetch_assoc($query)) { 
     $result[] = $row; 
    } 
} 

mssql_free_result($query); 

现在你可以用数组喜欢你的工作要:

print_r($result[0]); //first row 
print_r($result[1]); //second row 
... 
+0

你是什么意思与“我需要与他们作为单独的阵列”?你需要$ r1; $ 2;数组? – ole 2013-03-12 01:24:47

+0

伙计,完美的工作!非常感谢你的解决方案。 – Nathan 2013-03-12 04:44:16

+0

我会如何拆分assoc。数组到单个数组? – Nathan 2013-03-12 04:48:25

0
$i=0; 
while($row = mysql_fetch_array(query){ 
    $field1['Namefield1'][$i] = $row['Namefield1']; 
    $field2['Namefield2'][$i] = $row['Namefield2']; 
    $field3['Namefield3'][$i] = $row['Namefield3']; 
    $i++; 
} 

,或者如果你preffer一个二维数组:

$i=0; 
while($row = mysql_fetch_array(query){ 
    $result['Namefield1'][$i] = $row['Namefield1']; 
    $result['Namefield2'][$i] = $row['Namefield2']; 
    $result['Namefield3'][$i] = $row['Namefield3']; 
    $i++ 
} 
+0

这没有奏效。查看我修改的问题以获取详细信 – Nathan 2013-03-12 01:18:13

+0

错误是什么? – Mollo 2013-03-12 01:52:08