php中批量删除Mysql中相同前缀的数据表的代码_php技巧

方法一:

复制代码 代码如下:

<?php
mysql_connect('','','');
mysql_select_db('');
$rs=mysql_query('show tables');
while($arr=mysql_fetch_array($rs)){
$TF=strpos($arr[0],'class_');
if($TF===0){
$FT=mysql_query("drop table $arr[0]");
if($FT){
echo "$arr[0] 删除成功!<br>";
}
}
}
?>

方法二:
今天重装个站,搞了一下午,终于找到可以用的批量删除数据库表的方法。。。
这个是以xx_为前缀的示范,大家可以自己更改为想删除的表前缀

复制代码 代码如下:

<?php
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'user';
$db_pass = 'password';
$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){
//测试之用
/*echo $data[Name];
echo "
";
echo $table;
echo "
";*/
mysql_query("drop table $data[Name]");
}
}
return true;
}
/*截取某个特定字符前的所有字符函数
*$str 为待截取字符串
*$flag 特定字符如“_”
*/
function mysubstr($str,$flag){
$pos=strpos($str,$flag);
return substr($str,0,$pos);
}
?>

更改之处在:
1.开头处

<?php
function deldata($dbname,$tableflag){
$db_host = 'localhost';
$db_port = '3306';
$db_user = 'user';
$db_pass = 'password';
改为自己的数据库地址,账号和密码即可
2.结尾处

改为自己的数据库名和想删掉的表前缀
可以复制上面的代码保存为.php,再上传到空间目录打开

时间: 2024-10-31 00:08:53

php中批量删除Mysql中相同前缀的数据表的代码_php技巧的相关文章

php中批量删除Mysql中相同前缀的数据表的代码

方法一: 复制代码 代码如下: <?php mysql_connect('','',''); mysql_select_db(''); $rs=mysql_query('show tables'); while($arr=mysql_fetch_array($rs)){ $TF=strpos($arr[0],'class_'); if($TF===0){ $FT=mysql_query("drop table $arr[0]"); if($FT){ echo "$arr

php中操作memcached缓存进行增删改查数据的实现代码_php技巧

核心代码: <?php //创建一个memcache对象实例 $memcache = new Memcache; if(!$memcache->connect("127.0.0.1",11211)){ die('连接失败'); } if($memcache->set('key1',"xian",MEMCACHE_COMPRESSED,60)){ echo 'sucess!'; }//存值,其中xian字符串,也可以为数组,对象,但不能为资源 $va

【MySQL】批量删除mysql中数据库中的表

要删除某个数据库下面所有表的方法: 方法一 比如删除test数据库下所有表,如果要删除某些前缀的表 mysql -uroot -h127.0.0.1 --skip-column-names -A -e "select concat('drop table test.', table_name,';') from information_schema.tables where table_schema = 'test'" > /tmp/tmp_drop.sql mysql -uro

php中根据某年第几天计算出日期年月日的代码_php技巧

这个索引值除了方便面数据的记录和搜索,还起着记录日期资讯的作用,信息量很可观. 那么,如何还原索引值为可用的日期资讯呢? date('z')返回的是一年中的第几天,返回值为从0开始至365的整数.要将这些整数还原为日期信息,我们只需要一个简单的计算.以今年(2008年)第159天(实际为160天,php中从0开始,0对应于常规的第一天)为例,计算它的日期.星期方法如下: 复制代码 代码如下: <?php $MyDate=159; //第159天 $milliseconds = mktime(0,

php中计算中文字符串长度、截取中文字符串的函数代码_php技巧

在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启.当然,如果是用的自己的服务器,则只要在php.ini中开启即可.如果是用的虚拟主机,而服务器又没有开启这方面的函数的话,那就需要我们自己写出点适合咱国情的函数来了. 以下几个函数用起来颇为顺手的.不过要知道,得在utf-8环境下使用. 复制代码 代码如下: header('Content-type:text/html;cha

PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码_php技巧

有时候很实用在一些场合,留住备用吧 复制代码 代码如下: function is_mobile_request()       {         $_SERVER['ALL_HTTP'] = isset($_SERVER['ALL_HTTP']) ? $_SERVER['ALL_HTTP'] : '';         $mobile_browser = '0';         if(preg_match('/(up.browser|up.link|mmp|symbian|smartphon

php中用socket模拟http中post或者get提交数据的示例代码_php技巧

废话不多说.直接上代码:sock_post.php: 复制代码 代码如下: <?phpfunction sock_post($url, $data='') {  $url = parse_url($url);  $url['scheme'] || $url['scheme'] = 'http';  $url['host'] || $url['host'] = $_SERVER['HTTP_HOST'];  $url['path'][0] != '/' && $url['path']

php中使用__autoload()自动加载未定义类的实现代码_php技巧

下面是一段使用__autoload()的代码,供大家学习参考: 复制代码 代码如下: <?php/*** 自动加载相关类库文件*/function __autoload($classname){if(substr($classname,-6)=="Action"){include APP_PATH.'controllers/'.$classname.'.class.php';}elseif(substr($classname, -5)=="Model"){in

PHP利用MySQL保存session的实现思路及示例代码_php技巧

实现环境: PHP 5.4.24 MySQL 5.6.19 OS X 10.9.4/Apache 2.2.26 一.代码 CREATE TABLE `session` ( `skey` char(32) CHARACTER SET ascii NOT NULL, `data` text COLLATE utf8mb4_bin, `expire` int(11) NOT NULL, PRIMARY KEY (`skey`), KEY `index_session_expire` (`expire`