Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中重命名子文件夹_Php - Fatal编程技术网

如何在php中重命名子文件夹

如何在php中重命名子文件夹,php,Php,每当一个新客户端创建一个企业名称时,我都会使用php创建一个文件夹 $sql = "INSERT INTO kd_aboutus (business, category, subcategory, content, uafk, datein) VALUES ('$bn','$cat','$scat','$descr','$userID',now())"; $run_sql = mysqli_query($conn, $sql); if (!file_exists("user/$

每当一个新客户端创建一个企业名称时,我都会使用php创建一个文件夹

$sql = "INSERT INTO kd_aboutus (business, category, subcategory, content, uafk, datein) VALUES ('$bn','$cat','$scat','$descr','$userID',now())";
    $run_sql = mysqli_query($conn, $sql);

    if (!file_exists("user/$bn")) {
        mkdir("user/$bn", 0755);
    }
现在我的问题是,当用户想要编辑他或她的企业名称时,我还需要重命名他们已经创建的文件夹。我该怎么做呢。 这是我在编辑文件中的代码

$sql = "UPDATE kd_aboutus SET business='$bn', category='$cat', subcategory='$scat', content='$descr' WHERE aboutID='$targetID'";
    $run_sql = mysqli_query($conn, $sql);

PHP具有重命名文件夹/文件的功能:


PHP具有重命名文件夹/文件的功能:

您将需要该函数。请注意,最小参数是
string$oldname,string$newname
,因此在更改数据库中的记录之前,需要加载当前名称

例子
您将需要该函数。请注意,最小参数是
string$oldname,string$newname
,因此在更改数据库中的记录之前,需要加载当前名称

例子
重命名文件夹之前,必须先获取当前文件夹名称

SELECT business FROM kd_aboutus WHERE aboutID='$targetID';
在变量中获取上述查询的结果。比如说,
$oldbn

然后,将文件夹设置为:

rename("user/$oldbn", "user/$bn");

$sql = "UPDATE kd_aboutus SET business='$bn', category='$cat', subcategory='$scat', content='$descr' WHERE aboutID='$targetID'";
$run_sql = mysqli_query($conn, $sql);

您必须先获取当前文件夹名称,然后才能重命名它

SELECT business FROM kd_aboutus WHERE aboutID='$targetID';
在变量中获取上述查询的结果。比如说,
$oldbn

然后,将文件夹设置为:

rename("user/$oldbn", "user/$bn");

$sql = "UPDATE kd_aboutus SET business='$bn', category='$cat', subcategory='$scat', content='$descr' WHERE aboutID='$targetID'";
$run_sql = mysqli_query($conn, $sql);

是的,你无法破解它。具有该功能。你介意根据我的编辑文件举个例子吗?是的,你无法破解它。具有该功能。你介意根据我的编辑文件给出一个例子吗?这不是一个真正的答案,但你可以在创建文件夹时使用企业的id(如自动增量id),因此即使企业重命名,它们的id也保持不变。到目前为止,你做了哪些尝试?到底是什么问题?这不是一个真正的答案,但您可以在创建文件夹时使用企业的id(如autoincrement id),因此即使企业重命名,其id也保持不变。您迄今为止尝试了什么?到底是什么问题?每当我运行codeCatchable时,我都会遇到这样的错误“可捕获的致命错误:类mysqli_result的对象无法转换为字符串”。可捕获的致命错误:类mysqli_result的对象无法转换为字符串,并且它不会重命名现有文件夹。您的实现中存在错误。检查@LeonardChallis的答案。他已经提供了完整的实现。感谢alotI每次运行codeCatchable时都会收到此错误“可捕获致命错误:mysqli_结果类的对象无法转换为字符串”。可捕获致命错误:mysqli_结果类的对象无法转换为字符串,并且不会重命名现有文件夹。您的实现中存在错误。检查@LeonardChallis的答案。他已经提供了完整的实现。如果你觉得这是最好的解决方案,你可以接受这个答案。很高兴听到这个答案:)如果你觉得这是最好的解决方案,你可以接受这个答案。