当前位置:首页 » 文件管理 » laravel上传文件

laravel上传文件

发布时间: 2022-02-24 17:25:33

1. laravel怎么修改上传文件的临时保存路径啊 原本是storage\app

上传文件的临时保存路径是在php.ini中设置的,如
upload_tmp_dir = "e:/wamp/tmp"
各种开发框架或开源产品中需要修改的是上传文件的最终保存地址。

2. 有人部署过 Laravel 吗

laravel 部署到万网的虚拟主机上:
改变一下Laravel的文件目录结构,为应用选择低位的加密方式,就可以在万网云虚拟主机上成功运行。
拿laravel5.1来说:

在根目录下创建一个local文件夹,把网站根目录下除了public文件夹以外所有文件及文件夹复制到local文件夹中
然后把public文件夹下的所有文件复制到网站根目录,接着删除public文件夹,这样入口就变成根目录而不是public了
打开根目录下的index.php(之前/public/index.php)

require __DIR__.'/../bootstrap/autoload.php';
修改为
require __DIR__.'/local/bootstrap/autoload.php';

$app = require_once __DIR__.'/../bootstrap/app.php';
修改为
$app = require_once __DIR__.'/local/bootstrap/app.php';
打开/local/config/app.php(之前的/config/app.php)

'key' => env('APP_KEY', 'SomeRandomString'),
'cipher' => 'AES-256-CBC',
改为
'key' => env('APP_KEY', '1234567890qwerty'),
'cipher' => 'AES-128-CBC',
其中key使用长度为16的随机字符串,由于万网不支持'AES-256-CBC'所以用128位加密就可以了,128用16个随机字符串做key,256用32个。
上传到万网虚拟主机,然后再后台把PHP版本改成5.5就可以了,妥妥的就运行成功laravel了。

3. laravel5 提交 git storage 需不需要提交

1、创建SAE应用首先进入新浪云SAE界面/laravelsae/,接下来我们就可以按照部署说明上传代码到SAE。2、上传Laravel项目代码到SAE这里我们选择Github上一个现成的项目laravel5-on-sae,该项目针对SAE对Laravel5.1代码做了特定修改,我们下载其项目包并解压到本地。进入解压后的laravel5-on-sae目录,删除隐藏的文件夹.git,新建一个config.yaml,编辑其内容如下:handle:-rewrite:if(path~"^/$")goto"public/index.php"-rewrite:if(!is_dir()&&!is_file()&&path~"^(.*)$")goto"public/index.php/$1"编辑.gitignore文件,移除第一行/vendor(否则使用Git命令忽略该目录,导致找不到/vendor/autoload.php而报错)。编辑config/app.php,移除providers数组中的如下这行:App\Providers\ViewComponentServiceProvider::class,编辑app/Providers/EventServiceProvider.php内容如下:get();dd($posts);}}然后提交该代码到SAE项目:gitadd.gitcommit-m'test'gitpushsaemaster:1在浏览器中访问/database/test

4. laravel的 file move函数提示不能转换为二进制是怎么回事

$file = Input::file("nameFile");
$clientName = $file -> getClientOriginalName();
$tmpName = $file ->getFileName();
$url = $file->getRealPath();
echo $url; D:\wwwrot\facsimilemedia\public
echo $clientName; 171801_114747673522_2.jpg
$file->move('uploads',$clientName);
提示 :
FileException in UploadedFile.php line 235:
The file "171801_114747673522_2.jpg" exceeds the upload limit defined in your form.

5. laravel框架中怎么实现多文件上传

一、使用工具:laravel、软件编写程序
二、方法步骤:
1、配置本地文件系统
让我们从配置开始吧,我们在 public 目录下创建一个 uploads 目录用来存放上传的文件,这样所有上传文件都可以通过浏览器直接访问。
首先我们在博客项目目录下使用如下命令在 public 目录下创建 uploads 子目录:

很简单。接下来我们来编辑 config/blog.php:

我们在 uploads 配置项中使用 storage 定义使用的文件系统,使用 webpath 定义 web 访问根目录。
最后,编辑 config/filesystems.php 如下:

2、创建帮助函数文件
在 Laravel 5.1 项目中有时我们会需要一些不依赖于类的辅助函数,通常我们会将这些辅助函数定义在一个单独文件如 helpers.php 中。我们在 app 目录下创建这个名为 helpers.php 的文件,并编辑其内容如下:

其中 human_filesize() 函数返回一个易读的文件尺寸,is_image() 函数在文件类型为图片的时候返回 true。
要让应用能够正确找到 helpers.php 文件,还要修改项目根目录下的 composer.json:
在 autoload 配置项的 files 数组中指定要被加载的文件/文件夹。修改完成后记得运行 composer mpauto 确保修改生效:

现在 helpers.php 中的所有函数都会载入到自动加载器中,你可以在博客应用的代码中任意使用其中的函数。
3、创建文件上传管理服务
现在基本配置已经完成了,让我们创建一个服务类来管理上传文件。
检测文件 MIME 类型
我们想要基于不同类型的上传文件进行不同的操作,这可以通过检测上传文件 MIME 类型轻松实现。
PHP 有一个内置函数 mime_content_type() 用于检测文件的MIME类型,但是该函数已经废弃了,我们使用另一个解决方案。
在 Packagist 中搜索 “mime” 会查询到一个名为 dflydev 的包,我们在博客项目中使用 Composer 安装该依赖包:
我们将使用该依赖包提供的方法来检测文件的 MIME 类型。
创建UploadsManager类
在 app/Services 目录下创建 UploadsManager.php,编辑其内容如下:

4、实现文件上传管理列表
现在 UploadsManager 服务类已经创建,接下来我们来实现控制器的 index 方法。
创建 index 方法
编辑 app/Http/Controllers/Admin 目录下的 UploadController.php 文件内容如下:
构造方法中注入了 UploadsManager 依赖,在 index() 方法中只需传入 folderInfo() 返回的数据到要渲染的视图并返回即可。
你可能已经注意到 $folder 从请求中获取,是的,我们只需要通过请求参数即可实现文件夹修改。
创建 index 视图
在 resources/views/admin 目录下新建 upload 目录,并在该目录下创建 index.blade.php 文件,编辑该文件内容如下:

尽管这个模板文件很长,但是理解起来并没有什么困难,所有文件上传和下载管理都将在这里进行。
有没有注意到我们在最后包含了 admin.upload._modals?是的,我们将模态对话框放到了一个单独的视图模板中。现在,我们在 resources/views/admin/upload 目录下创建一个空的 _modals.blade.php 文件。
上传管理界面
打开浏览器,进入博客应用后台管理页面,点击顶部导航条的“上传”(Uploads)链接,将会跳转到如下页面:
既漂亮又清爽,有木有?接下来让我们来实现所有的模态对话框及其背后的业务逻辑。
5、完成文件上传管理功能
对于完整的文件上传管理器而言剩下的工作已经不多了,现在是时候完成所有功能了。
添加路由
我们需要为上传管理器定义所有需要的路由,编辑 app/Http/routes.php 添加如下路由:
定义所有模态对话框
编辑我们之前创建的 _modals.blade.php 文件内容如下:

在该文件中总共有5个不同的模态弹出框,分别对应上面定义的5个路由。
添加表单请求验证类
使用 Artisan 命令创建 UploadFileRequest,并编辑其内容如下:
使用 Artisan 命令创建 UploadNewFolderRequest,并编辑其内容如下:

同样,这些请求类用于验证表单输入。
完成 UploadController 所有方法
编辑 UploadController.php 文件内容如下:

完成 UploadsManager 服务类
最后编辑 app/Services/UploadsManager.php 内容如下:

至此,已经完成了文件上传管理的所有工作我们将本地存储的根目录修改为前面创建的 public/uploads 目录。

6. laravel的文件上传可以上传视频吗

绝对可以啊~你看文档,有详细说明。

7. laravel框架用request:file接不到文件怎么解决

亲,上传文件请参考手册:
http://www.golaravel.com/laravel/docs/5.0/requests/#files
取得上传文件
$file = Request::file('photo');

确认文件是否有上传
if (Request::hasFile('photo'))
{
//
}

file 方法返回的对象是 Symfony\Component\HttpFoundation\File\UploadedFile 的实例,UploadedFile 继承了 PHP 的 SplFileInfo 类并且提供了很多和文件交互的方法。
确认上传的文件是否有效
if (Request::file('photo')->isValid())
{
//
}

移动上传的文件
Request::file('photo')->move($destinationPath);

Request::file('photo')->move($destinationPath, $fileName);

希望对你有帮助!~~

8. 怎么修改laravel的config下面的配置文件

这种需要经常修改的配置可以放在数据库或者缓存里,例如memcache 和redis等。
不过还是提供个写入 laravel config下面的文件的思路:
laravel下面的配置文件基本是return 一个数组,你可以用这种方法得到符合php语法的数组字符串:
ob_start();
var_export(['abc' => 'efc']);
$arrStr = ob_get_contents();
ob_end_clean();
$config = '<?php' . PHP_EOL
. 'return ' . $arrStr;
file_put_contents('config.php', $config);

不过这样始终不太安全,建议真要写入文件的话还是用json做配置吧

9. laravel 怎么限制上传文件大小

本地和线上都是nginx,先配好rewrite规则(就是把.htaccess里面的规则原样翻译到nginx.conf里面去)
服务器上,我是直接导sql, 毕竟我还不习惯用php命令去创建数据库,当然了,这个见仁见智了,laravel的迁移功能是很强大的,在同步本地和线上数据库方面,实在是简单之至,若你用它的迁移功能操作的话,毕竟只是写个php脚本,传到服务器再执行一下就行了,都不用在服务器登录mysql客户端去操作了.
vender 的是在服务器上当然要用 composer 安装了, 一来vendor太大,用直接上传或者ftp都太慢,二来,用composer的话,可以获得laravel本身以及vendor里面各组件的最新稳定版本.

我是目前还没在服务器上用 artisan, 只用 composer 进行整个框架的安装,php composer install laravel/laravel 之后, 再把本地的app和public上传覆盖, 就可以运行了(记得配置根目录指向public目录,不然还得自己配置路径)
1. 记得 chmod -R 777 app/storage , 不给这个目录写权限, 是运行不了的
2. 记得在线上版的app/config/app.php 里面, 使用一个32位随机的 KEY, 然后将 debug 改为false, 不然任何错误都会直接显示出来, 太不安全了

10. 如何将自己的laravel包放到github

bootstrap/cache 程序运行时产生的缓存文件目录
storage 子目录中的文件,这些文件也是程序运行时产生的文件
.env 本地配置文件,这个依赖具体的环境,所以不需要进行版本管理
vendor和composer.lock 这个是composer产生的文件,这个视情况而定。一般来说composer.lock需要上传,这是为了统一程序使用外部库的版本而考虑的。vendor目录可以忽略,但如果外网访问有限制,也可以上传。

热点内容
零基础c语言入门 发布:2024-10-27 12:20:45 浏览:689
相机在哪里设置密码 发布:2024-10-27 12:20:44 浏览:371
sql存储过程exec 发布:2024-10-27 12:17:14 浏览:405
安卓怎么取 发布:2024-10-27 12:11:02 浏览:995
凯特猫监控器的初始密码是多少 发布:2024-10-27 12:10:53 浏览:795
如何给魔兽地图加密 发布:2024-10-27 11:52:58 浏览:458
php调用html 发布:2024-10-27 11:48:30 浏览:342
益编程 发布:2024-10-27 11:48:18 浏览:73
最小生成树prim算法c语言 发布:2024-10-27 11:48:16 浏览:684
如何清理网站缓存 发布:2024-10-27 11:45:09 浏览:778