Home > Article > Backend Development > Teach you simple implementation of PHP file management_PHP tutorial
How to use
As we all know, using FTP to upload, copy, and delete a large number of files is quite slow. It takes more than half an hour to upload to WordPress. Delete it. It also takes half an hour. . . By uploading a simple php code and then opening the webpage, the above process can be completed in less than 3 seconds, which is really cool (especially for people like me who play websites on mobile phones...)
Note: Copy the code in the article and save it as Just upload the xxx.php file to the space and open it (modify accordingly if you need to modify it)
PHP file management 1. Upload and decompress code
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ?php </span></span></li><li><span>exec("fetch http://cn.wordpress<br />.org/wordpress-2.8-zh_CN.zip"); </span></li><li class="alt"><span>exec("tar xvfz wordpress-2.8-<br />zh_CN.zip"); </span></li><li><span class="tag">?></span><span> </span></span></li></ol>
This is the upload and decompression code of wordpress. You can also use the following code alone to decompress files (you can also obtain network files in the same way)
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ?php </span></span></li><li><span>exec("tar xvfz wordpress<br />-2.8-zh_CN.zip"); </span></li><li class="alt"><span class="tag">?></span><span> </span></span></li></ol>
PHP file management 2. Copy code
Usually the above decompression will decompress to a new folder, and if you want to copy to the root directory, you can use the following code (there are also ways to move files, but I won’t introduce them for backup) (Here we take Shenlong Space as an example, the path needs to be changed by yourself)
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ? </span></span></li><li><span>exec("cp -Rf /usr/virtual/leo2351960<br />/flysh.co.tv/public_html/wordpress/<br /> /usr/virtual/leo2351960/flysh.co.<br />tv/public_html/"); </span></li><li class="alt"><span class="tag">?></span><span> </span></span></li></ol>
The above is the code to copy the wp folder to the root directory. There are two paths. The first one needs to be moved. File (folder), followed by the target path, the path must be an absolute path
PHP file management 3. Delete file (folder)
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ? </span></span></li><li><span>exec("rm -r /usr/virtual/<br />leo2351960/flysh.co.tv/<br />public_html/wordpress"); </span></li><li class="alt"><span class="tag">?></span><span> </span></span></li></ol>
Attention, delete with caution , this action was too fast, and it was too late to regret (last time I accidentally deleted a folder and had to reinstall it)
PHP file management 4. Modify file (folder) permissions
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ?php </span></span></li><li><span>exec("chmod -R 777 /v /usr/virtual<br />/leo2351960/flysh.co.tv/public_html/xxx.php"); </span></li><li class="alt"><span>exec("chmod -R 777 /v /usr/virtual<br />/leo2351960/flysh.co.tv/public_html/up"); </span></li><li><span class="tag">?></span><span> </span></span></li></ol>
You can modify the permissions of a large number of files and folders with the corresponding modifications, which is convenient!
PHP file management 5. Batch delete database tables with the same prefix
This was found by brother 007 of free8 (he found it and PM me, he is such a good person~) , by the way, paste
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><</span><span> ?php </span></span></li><li><span>function deldata($dbname,$tableflag){ </span></li><li class="alt"><span>$</span><span class="attribute">db_host</span><span> = </span><span class="attribute-value">'localhost'</span><span>; </span></li><li><span>$</span><span class="attribute">db_port</span><span> = </span><span class="attribute-value">'3306'</span><span>; </span></li><li class="alt"><span>$</span><span class="attribute">db_user</span><span> = </span><span class="attribute-value">'username'</span><span>; </span></li><li><span>$</span><span class="attribute">db_pass</span><span> = </span><span class="attribute-value">'password'</span><span>; </span></li><li class="alt"><span>$</span><span class="attribute">connect</span><span> =</span><span class="attribute-value">mysql_connect</span><span>($db_host,<br />$db_user,$db_pass); </span></li><li><span>mysql_select_db($dbname); </span></li><li class="alt"><span>$</span><span class="attribute">result</span><span> = </span><span class="attribute-value">mysql_query</span><span>("show table <br />status from $dbname",$connect); </span></li><li><span>$</span><span class="attribute">data</span><span>=</span><span class="attribute-value">mysql_fetch_array</span><span>($result); </span></li><li class="alt"><span>while($</span><span class="attribute">data</span><span>=</span><span class="attribute-value">mysql_fetch_array</span><span>($result)) { </span></li><li><span>$</span><span class="attribute">table</span><span>=</span><span class="attribute-value">mysubstr</span><span>($data[Name],"_"); </span></li><li class="alt"><span>if($</span><span class="attribute">table</span><span>==$tableflag){ </span></li><li><span>//测试之用 </span></li><li class="alt"><span>/*echo $data[Name]; </span></li><li><span>echo "</span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span class="tag">></span><span>"; </span></span></li> <li class="alt"><span>echo $table; </span></li> <li> <span>echo "</span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span class="tag">></span><span>";*/ </span> </li> <li class="alt"><span>mysql_query("drop table $data[Name]"); </span></li> <li><span>} </span></li> <li class="alt"><span>} </span></li> <li><span>return true; </span></li> <li class="alt"><span>} </span></li> <li><span>/*截取某个特定字符前的所有字符函数 </span></li> <li class="alt"><span>*$str 为待截取字符串 </span></li> <li><span>*$flag 特定字符如“_” </span></li> <li class="alt"><span>*/ </span></li> <li><span>function mysubstr($str,$flag){ </span></li> <li class="alt"> <span>$</span><span class="attribute">pos</span><span>=</span><span class="attribute-value">strpos</span><span>($str,$flag); </span> </li> <li><span>return substr($str,0,$pos); </span></li> <li class="alt"><span>} </span></li> <li> <span class="tag">?></span><span> </span> </li> </ol>
<ol class="dp-xml"><li class="alt"><span><span class="tag"><</span><span> ?php //test </span></span></li><li><span>$</span><span class="attribute">dbname</span><span>=</span><span class="attribute-value">"database"</span><span>; </span></li><li class="alt"><span>//数据库名 </span></li><li><span>$</span><span class="attribute">tableflag</span><span>=</span><span class="attribute-value">"wp"</span><span>; </span></li><li class="alt"><span>//要删除的表的前缀,有这个前缀的表才删除<br />,标志出是哪一个用户 </span></li><li><span>deldata($dbname,$tableflag); </span></li><li class="alt"><span>//$</span><span class="attribute">test</span><span>=</span><span class="attribute-value">mysubstr</span><span>("cdb_account_log","_"); </span></li><li><span>//echo $test; </span></li><li class="alt"><span class="tag">?></span><span> </span></span></li></ol>
Pay attention to modify the username and password above as well as the database and table prefix below
OK Okay, the above are some practical codes for PHP file management. There are many more that you can find by yourself. I like the quick and convenient things the most~