PHP がアップロード ルート ディレクトリが存在しないことを示すプロンプトを表示する場合の問題の解決策: まずルート ディレクトリにアクセス許可を付与し、問題が解決したかどうかを確認します。問題が解決しない場合は、mkdir コマンドを使用して新しいフォルダーを作成し、最後に、新しく作成したフォルダーに最高のアクセス許可を与えます。

#この記事の動作環境: Windows10 システム、php 7、thinkpad t480 コンピューター。
問題の修復:
写真をアップロードしようとすると、「アップロード ルート ディレクトリが存在しません。手動で作成してください。」というプロンプトが表示されました。
解決策:
最初に許可を与えてみて、それでも問題が解決できない場合は、フォルダーを削除してください。次に、mkdir コマンドを使用して新しいフォルダーを作成し、777 のアクセス許可を与えます。
質問 2:
ThinkPHP3 を使用して画像をアップロードする開発プロセス中に、次の問題に遭遇しました:
アップロード ルート ディレクトリが存在しません。手動で作成してみてください: ./Uploads/; アップロードされた写真の中国語名が文字化けします; ファイルをアップロードすると、現在の日付に基づいた名前のフォルダーが自動的に生成され、ファイルはその中に保存されます。
注: 開発環境は Windows 上の Xampp です。
問題が解決される前のコードを添付します。

次の 3 つです。質問 解決策:
問題 1
情報を確認すると、これはフォルダーのアクセス許可の問題であると一部のネチズンが言いましたが、これは次のように解決できます。アップロードされた写真は ./ にアップロードされます。 Uploads ディレクトリで、rootPath を './' に設定し、savePath を保存するパスに設定します。先頭に "./" を付けないように注意してください。最終的な保存ディレクトリ パスは ./Uploads/1/ です。
$upload->rootPath = "./";
$upload->savePath = "Uploads/$uid/";
ログイン後にコピー
質問 2
ThinkPHP\Library\Think\Upload\Driver\Local.class.php ファイルで保存メソッドを見つけます:

if (!move_uploaded_file($file['tmp_name'], $filename))
ログイン後にコピー
を
if (!move_uploaded_file($file['tmp_name'], iconv('utf-8','gb2312',$filename)))
ログイン後にコピー
に変更します。 質問 3
アップロード時、デフォルトでは、アップロードされたファイルの保存にサブディレクトリが自動的に使用されます。つまり、$upload-> ;autoSub = true; false に設定するだけです。
コード内のアップロード パラメーターに次のコードを追加します:
$upload->autoSub = false;
ログイン後にコピー
推奨される学習: php training
以上がPHP からアップロード ルート ディレクトリが存在しないというプロンプトが表示された場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。