如何在PHP中实现DataSet
,如.NET?
我希望这个类只从数据库中读取一次数据,然后我就可以使用数据而无需再连接到MySQL来运行查询。
select * from user
当我在DataSet
上运行此查询时,数据将从内存中获取。
如何在PHP中实现此机制?
答案 0 :(得分:4)
您可以将数据推送到这样的数组中:
$result = mysql_query( 'select * from user' );
$results = array();
while ( $row = mysql_fetch_array( $result ) ) {
array_push( $results, $row );
}
mysql_close();
然后你可以在阵列上做你想做的任何操作......
foreach( $results as $record ){
$foo = $record['col_name'];
//...
}
答案 1 :(得分:0)
您所描述的是.NET的DataSet
/ DataTable
数据容器类,它们可以在断开连接模式下工作。
DataReader
是一种游标,需要打开连接才能遍历基础查询的结果集。
在PHP中你可以这样做:
<?PHP
$user_name = "root";
$password = "";
$database = "addressbook";
$server = "127.0.0.1";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
$SQL = "SELECT * FROM tb_address_book";
$result = mysql_query($SQL);
while ($db_field = mysql_fetch_assoc($result)) {
print $db_field['ID'] . "<BR>";
print $db_field['First_Name'] . "<BR>";
print $db_field['Surname'] . "<BR>";
print $db_field['Address'] . "<BR>";
}
mysql_close($db_handle);
}
else {
print "Database NOT Found ";
mysql_close($db_handle);
}
?>
答案 2 :(得分:0)
我不认为php可以提供你正在寻找的内容,因为它是非常多的文本代码和HTML驱动,因此你不会像在.net中那样获得花哨的GUI对象。 PEAR提供了很多源代码,可以生成数据网格,你可能会调查,所有这些都存储在代码中,比如数组等。我对php比较新,所以也许有人不同意......