<?php
/*xuanfunction 删除数据库中有特定前缀的表
*$dbname 数据库名
*$tableflag 表前缀,这里标志出是哪一个用户,如表s00002_goods前缀为s00002
*/
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'chuangye';
$db_pass = 'chuangye123';
$connect =mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($dbname);
$result = mysql_query("show table status from $dbname",$connect);
$data=mysql_fetch_array($result);
while($data=mysql_fetch_array($result)) {
$table=mysubstr($data[Name],"_");//截取当前表的下划线以前的字符串得到表前缀
if($table==$tableflag){ //判断截取的前缀是否等于自己需要的前缀$tableflag,如果是就删除该表
//测试之用
/*echo $data[Name];
echo "<br>";
echo $table;
echo "<br>";*/
mysql_query("drop table $data[Name]");
}
}
return true;
}
/*截取某个特定字符前的所有字符函数
*$str 为待截取字符串
*$flag 特定字符如“_”
*/
function mysubstr($str,$flag){
$pos=strpos($str,$flag);
return substr($str,0,$pos);
}
?>
<?php //test
$dbname="dbg0001";//数据库名
$tableflag="s000002";//要删除的表的前缀,有这个前缀的表才删除,标志出是哪一个用户
deldata($dbname,$tableflag);
//$test=mysubstr("s000002_account_log","_");
//echo $test;
?>
/*xuanfunction 删除数据库中有特定前缀的表
*$dbname 数据库名
*$tableflag 表前缀,这里标志出是哪一个用户,如表s00002_goods前缀为s00002
*/
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'chuangye';
$db_pass = 'chuangye123';
$connect =mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($dbname);
$result = mysql_query("show table status from $dbname",$connect);
$data=mysql_fetch_array($result);
while($data=mysql_fetch_array($result)) {
$table=mysubstr($data[Name],"_");//截取当前表的下划线以前的字符串得到表前缀
if($table==$tableflag){ //判断截取的前缀是否等于自己需要的前缀$tableflag,如果是就删除该表
//测试之用
/*echo $data[Name];
echo "<br>";
echo $table;
echo "<br>";*/
mysql_query("drop table $data[Name]");
}
}
return true;
}
/*截取某个特定字符前的所有字符函数
*$str 为待截取字符串
*$flag 特定字符如“_”
*/
function mysubstr($str,$flag){
$pos=strpos($str,$flag);
return substr($str,0,$pos);
}
?>
<?php //test
$dbname="dbg0001";//数据库名
$tableflag="s000002";//要删除的表的前缀,有这个前缀的表才删除,标志出是哪一个用户
deldata($dbname,$tableflag);
//$test=mysubstr("s000002_account_log","_");
//echo $test;
?>