簡體   English   中英

如何在 php 中創建文件夾並將圖像保存在我的服務器上?

[英]How can a create a folder and save a image on my server in php?

下面我留下了我的代碼。 它目前在我的開發環境(本地主機)中工作,但是當我將更改推送到我的實時服務器時,我的 php 似乎沒有創建文件夾/文件。

public static function saveImage($image, $name, $path = '')
{
    $img_data = explode(',', $image);
    $mime = explode(';', $img_data[0]);
    $data = $img_data[1];
    $extension = explode('/', $mime[0])[1];
    if(!file_exists('../public/media/img/' . $path)){
        mkdir('../public/media/img/' . $path, 0755);
        echo('Test1');
    }
    echo('test2');
    file_put_contents('../public/media/img/' . $path . $name . '.' . $extension, base64_decode($data));
    return 'media/img/' . $path . $name . '.' . $extension;
}

在本地它會第一次擊中 echo('test1'),然后它只會擊中 echo('test2')。 當它在服務器上時,它總是會遇到 echo('test1')

默認情況下, mkdir 不會遞歸地創建路徑。 例如,如果您的服務器上沒有 ../public/media 文件夾,則 mkdir 返回 false 並且不創建路徑。 為了解決這個問題,將第三個參數傳遞給 mkdir 為 true:

mkdir('../public/media/img/' . $path, 0755, true);

幫自己一個忙並使用絕對路徑...

您可以使用常量__DIR__來評估腳本實際駐留的文件夾。 相對路徑是從當前工作目錄計算的,可以不同於__DIR__

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM