Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.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_Laravel - Fatal编程技术网

Php 为图像文件夹创建较短的链接

Php 为图像文件夹创建较短的链接,php,laravel,Php,Laravel,我在我的项目中为图像创建了新的磁盘,我想使用我在blade.php视图中添加到userImage磁盘的URL 磁盘在我的控制器中工作正常,我使用它来检测文件夹路径是否存在,如果不存在,我正在创建一个: if(!Storage::disk('userImage')->has('standard')){ 存储::磁盘('userImage')->makeDirectory('standard'); } 但我想在我的blade.php页面视图中也使用它,现在我正在使用: (C:\xampp\htdo

我在我的项目中为图像创建了新的磁盘,我想使用我在blade.php视图中添加到userImage磁盘的URL

磁盘在我的控制器中工作正常,我使用它来检测文件夹路径是否存在,如果不存在,我正在创建一个:

if(!Storage::disk('userImage')->has('standard')){
存储::磁盘('userImage')->makeDirectory('standard');
}
但我想在我的blade.php页面视图中也使用它,现在我正在使用:

(C:\xampp\htdocs\rps\public\storage\images\userImage\standard\default.png)

上面的代码非常有效,它显示了图像,但我想将其缩短为:

src="{{asset('userImage/standard/default.png')}}"
我希望它能通过我的userImage磁盘的工作方式起作用,但事实并非如此。有人知道如何解决这个问题吗

“磁盘”=>[
“本地”=>[
“驱动程序”=>“本地”,
'root'=>存储路径('app'),
],
“公共”=>[
“驱动程序”=>“本地”,
'root'=>存储路径('app/public'),
'url'=>env('APP_url')。/storage',
“可见性”=>“公共”,
],
“图像”=>[
“驱动程序”=>“本地”,
'root'=>存储路径('app/public/images'),
'url'=>env('APP_url')。/images',
“可见性”=>“公共”,
],
“用户图像”=>[
“驱动程序”=>“本地”,
'root'=>存储路径('app/public/images/userImage'),
'url'=>env('APP_url')。/userImage',
“可见性”=>“公共”,
],
‘s3’=>[
“驱动程序”=>“s3”,
'key'=>env('AWS\u ACCESS\u key\u ID'),
'secret'=>env('AWS\u secret\u ACCESS\u KEY'),
'region'=>env('AWS\u DEFAULT\u region'),
“bucket”=>env(“AWS_bucket”),
'url'=>env('AWS_url'),
],
],

你的问题不清楚

如果您想要更短的img url:

您可以创建从
public/userImage
storage/app/public/images/userImage
的符号链接

  • 添加到routes文件夹中的console.php

    Artisan::command('link', function(){
        $this->laravel->make('files')->link(
            storage_path('app/public/images/userImage'), public_path('userImage')
        );
    });
    
  • 然后是控制台命令:

    php artisan link
    
  • 如果您想要更短的代码(刀片中的路径):

    您可以创建自己的助手函数

  • 创建app/Helpers/Helpers.php文件

    function image($path){
        $path = trim($path, '/');
        return asset('storage/images/' . $path);
    }
    
  • 将其添加到作曲家的自动加载

    "autoload": {
         "files": [
             "app/Helpers/helpers.php"
        ],
        "psr-4": {
             "App\\": "app/"
        },
        "classmap": [
             "database/seeds",
             "database/factories"
        ]
    },
    
  • 在刀片中使用它:

    {{ image('userImage/standard/default.png') }}
    

  • 你的问题不清楚

    如果您想要更短的img url:

    您可以创建从
    public/userImage
    storage/app/public/images/userImage
    的符号链接

  • 添加到routes文件夹中的console.php

    Artisan::command('link', function(){
        $this->laravel->make('files')->link(
            storage_path('app/public/images/userImage'), public_path('userImage')
        );
    });
    
  • 然后是控制台命令:

    php artisan link
    
  • 如果您想要更短的代码(刀片中的路径):

    您可以创建自己的助手函数

  • 创建app/Helpers/Helpers.php文件

    function image($path){
        $path = trim($path, '/');
        return asset('storage/images/' . $path);
    }
    
  • 将其添加到作曲家的自动加载

    "autoload": {
         "files": [
             "app/Helpers/helpers.php"
        ],
        "psr-4": {
             "App\\": "app/"
        },
        "classmap": [
             "database/seeds",
             "database/factories"
        ]
    },
    
  • 在刀片中使用它:

    {{ image('userImage/standard/default.png') }}
    

  • 请参考Laravel文件系统请参考Laravel文件系统我知道它是如何工作的,但当我在刀片中调用该函数时,我得到:
    调用未定义的函数image()
    我需要刷新我的编写器还是做些什么来让它工作
    composer update
    没有帮助我@IndianCodingI了解它是如何工作的,但当我在刀片中调用该函数时,我得到:
    调用未定义的函数image()
    我需要刷新我的composer或其他东西才能使其工作吗<代码>编写器更新没有帮助我@IndianCoding