PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
本文实例讲述了PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法。分享给大家供大家参考,具体如下:
这是一段简单的代码,可实现统计该数据库中每个表的记录数,并按递减顺序排列的功能
$host='127.0.0.1';
$port=3306;
$dbname='test';
$username='root';
$password='';
functionee($p)
{
if(PHP_SAPI=='cli')
{
echo"\n";
}else{
echo"<pre>";
}
print_r($p);
if(PHP_SAPI=='cli')
{
echo"\n";
}else{
echo"<pre>";
}
}
$dsn="mysql:host={$host};port={$port};dbname={$dbname}";
$opts=array(PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION,PDO::ATTR_AUTOCOMMIT=>0);
try{
$pdo=newPDO($dsn,$username,$password,$opts);
}catch(PDOException$e){
echo$e->getMessage();
}
//有查询结果
functionquery($sql)
{
global$pdo;
$stmt=$pdo->query($sql);
$data=$stmt->fetchAll(Pdo::FETCH_BOTH);
return$data;
}
//无查询结果
functionexecute($sql)
{
global$pdo;
$affect_rows=$pdo->query($sql);
return$affect_rows;//影响条数
}
$tables=query("showtables");
$sort_data=array();
foreach($tablesas$table)
{
//表记录条数
$count_sql="selectcount(*)asnumfrom{$table[0]}";
$stmt=$pdo->query($count_sql);
$info=$stmt->fetch(Pdo::FETCH_BOTH);
$pad_table=str_pad($table[0],25,'');
$sort_data[]=array('table'=>$pad_table,'num'=>$info['num']);
$sort_index[]=$info['num'];
}
array_multisort($sort_index,SORT_DESC,$sort_data);
foreach($sort_dataas$val)
{
$row_str=<<<eof
{$val['table']}[{$val['num']}]
eof;
ee($row_str);
}
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《php常见数据库操作技巧汇总》、《PHP基于pdo操作数据库技巧总结》及《PHP基本语法入门教程》
希望本文所述对大家PHP程序设计有所帮助。