使用 PHP 在 FTP 服务器上创建文件夹

Create folder on FTP server with PHP

我将 Current PHP version: 7.1.4 用于 Ionic2 应用程序后端。

我正在尝试在 ftp server 上创建文件夹。直接 link 到 php 文件 http://site/php/directory.php 回显是

Successfully created images

在此之后,文件夹 images 不存在于目录中,第二个 link 到 php,消息是:

Warning: ftp_mkdir(): Can't create directory: File exists in /path/php/directory.php on line 8 Error while creating images

但文件夹 images 未创建且不存在于目录中。然后我用FTP客户端工具手动创建了一个文件夹images,这样文件夹就真的像往常一样创建了。

为什么第一个 link 到 http://site/php/directory.php 的回显是 Successfully created images 而第二个 Can't create directory: File exists in 如果文件夹 images 没有被创建,在此之后,也是我能够手动创建文件夹 images。我不确定,也许是某种特定的默认服务器设置,或者某种隐藏文件夹。我那里没有隐藏文件,所以不知道这里出了什么问题:

<?php
$ftp_server = "ftp_address";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, "ftp_username", "ftp_password");

$dir = "images";

if (ftp_mkdir($ftp_conn, $dir))
  {
  echo "Successfully created $dir";
  }
else
  {
  echo "Error while creating $dir";
  }
ftp_close($ftp_conn);
?> 

文件夹已创建,但位于不同的位置。您必须查找 php 代码实际执行的位置,然后您会发现错误创建的文件夹。

从我的角度来看:定义创建此类文件夹或文件的位置非常棘手。然而,有 "show working directory" 命令可以帮助您调试它。