精华内容
下载资源
问答
  • 1.想使用Redis作为队列的驱动,先通过宝塔安装redis2....把队列连接设置为redis,修改.env文件QUEUE_CONNECTION=redis5.创建队列任务类:php artisan make:job DownloadFiles这样会生成一个类文件:6.类文件:&a...

    1.想使用Redis作为队列的驱动,先通过宝塔安装redis

    001ae37a8bbef7ac5775d1eea8ec1a53.png

    2.安装好redis,需要配置

    5853bbf127f9d3ef7cfb2d779e1dffbb.png

    3.点开宝塔中的redis设置,目前config/database.php不需要改动

    58131e848b032cacc1407a11f7b71b6f.png

    4.把队列连接设置为redis,修改.env文件

    QUEUE_CONNECTION=redis

    5.创建队列任务类:php artisan make:job DownloadFiles

    这样会生成一个类文件:

    3dc9a8126f516518e7ba74c503e3a192.png

    6.类文件:

    <?php

    namespace App\Jobs;

    use Illuminate\Bus\Queueable;

    use Illuminate\Queue\SerializesModels;

    use Illuminate\Queue\InteractsWithQueue;

    use Illuminate\Contracts\Queue\ShouldQueue;

    use Illuminate\Foundation\Bus\Dispatchable;

    class DownloadFiles implements ShouldQueue

    {

    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    /**

    * Create a new job instance.

    *

    * @return void

    */

    public function __construct()

    {

    //

    }

    /**

    * Execute the job.

    *

    * @return void

    */

    public function handle()

    {

    //

    }

    }

    把想执行的动作放到handle中便可以了

    7.调用任务

    DownloadFiles::dispatch();

    8.传参

    $model = Down::where('id',1)->first();

    //此处参数会传到任务类DownloadFiles的构造方法

    DownloadFiles::dispatch($model);

    <?php

    namespace App\Jobs;

    use Illuminate\Bus\Queueable;

    use Illuminate\Queue\SerializesModels;

    use Illuminate\Queue\InteractsWithQueue;

    use Illuminate\Contracts\Queue\ShouldQueue;

    use Illuminate\Foundation\Bus\Dispatchable;

    class DownloadFiles implements ShouldQueue

    {

    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    /**

    * Create a new job instance.

    *

    * @return void

    */

    public function __construct($model)

    {

    //接到外部传入的$model

    }

    /**

    * Execute the job.

    *

    * @return void

    */

    public function handle()

    {

    //

    }

    }

    9.启动处理器

    php artisan queue:work

    10.要使 queue:work 进程一直在后台运行,你应该使用进程管理器比如 Supervisor 来确保队列处理器不会停止运行

    记住,队列处理器是一个常驻的进程并且在内存中保存着已经启动的应用状态。因此,它们并不会在启动后注意到你代码的更改。所以,在你的重新部署过程中,请记得 重启你的队列处理器.

    11.可以通过仪表盘Horizon更加直观的看到队列情况,包括一些错误,通过手册查询`Horizon`完成安装。

    Horizon 仪表盘路由是 /horizon。 默认情况下,你只能在 local 环境下访问仪表盘。我们可以使用 Horizon::auth 方法给仪表盘定义更具体的访问策略。auth 方法接收一个回调函数作为参数,该回调函数应当返回 true 或 false,以确认用户是否具有仪表盘的访问权限。通常情况下,你应当在 AppServiceProvider 的 boot 方法中调用 Horizon::auth:

    Horizon::auth(function ($request) {

    // return true / false;

    });

    12.调试的时候可以把.env中的连接方式改成`sync`:

    QUEUE_CONNECTION=sync

    展开全文
  • Laravel5语言包.zip

    2019-07-19 07:57:38
    Laravel 5 语言包,包含37种语言, 基于 Laravel4-lang.安装composer require "overtrue/laravel-lang:dev-master" 或者添加下面一行到你的项目 composer.json 中 require 部分:"require": { "overtrue/...
  • Image 是一个PHP图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成到Laravel应用中。 1、安装 安装Intervention Image之前,需要确保PHP版本>=5.4并且...

    Intervention Image 是一个PHP图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成到Laravel应用中。

    1、安装

    安装Intervention Image之前,需要确保PHP版本>=5.4并且安装了Fileinfo扩展,以及GD库(>=2.0)或者Imagick扩展(>=6.5.7)。

    我们使用Composer在命令行安装最新版本的Intervention Image:

    composer require intervention/image

    2、集成到Laravel

    前面已经提到,Intervention Image 提供了相应的服务提供者和门面以便集成到Laravel应用。

    安装好Intervention Image后,打开config/app.php,注册如下服务提供者到$providers数组:

    Intervention\Image\ImageServiceProvider::class

    然后添加如下门面到$aliaes数组:

    'Image' => Intervention\Image\Facades\Image::class

    这样我们就可以在Laravel应用代码中直接使用Image了。

    3、配置

    默认情况下,Intervention Image使用PHP的GD库扩展处理所有图片,如果你想要切换到Imagick,你可以将配置文件拉到应用中:

    php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"

    这样对应的配置文件会被拷贝到config/image.php,这样你可以在该配置文件中修改图片处理驱动配置。

    4、使用示例

    Route::get('/', function(){
        $img = Image::make('foo.jpg')->resize(300, 200);
        return $img->response('jpg');
    });
    

    更多使用方法请参考 Intervention Image 官方文档:http://image.intervention.io/



    在 Laravel 5 中集成 Intervention Image 实现对图片的创建、修改和压缩处理

    Intervention Image是一个PHP图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成到Laravel应用中。


    1、安装


    安装Intervention Image之前,需要确保PHP版本>=5.4并且安装了Fileinfo扩展,以及GD库(>=2.0)或者Imagick扩展(>=6.5.7)。

    我们使用Composer在命令行安装最新版本的Intervention Image:

    composer require intervention/image

    执行命令后,会在项目composer.json文件中的require中增加如下图所示:



    2、集成到Laravel


    前面已经提到,Intervention Image 提供了相应的服务提供者和门面以便集成到Laravel应用。

    安装好Intervention Image后,打开config/app.php,注册如下服务提供者到$providers数组:

    [html] view plain copy
    1. Intervention\Image\ImageServiceProvider::class  

    然后添加如下门面到$aliaes数组:

    [html] view plain copy
    1. 'Image' => Intervention\Image\Facades\Image::class  

    这样我们就可以在Laravel应用代码中直接使用Image了。


    3. 基础用法


    使用时,如果laravel版本较高的已经引入命名空间的,需要在使用的时候,引用一下Image的命名空间,否则找不到该类。

    [html] view plain copy
    1. // 修改指定图片的大小  
    2. $img = Image::make('images/avatar.jpg')->resize(200, 200);  
    3.   
    4. // 插入水印, 水印位置在原图片的右下角, 距离下边距 10 像素, 距离右边距 15 像素  
    5. $img->insert('images/watermark.png', 'bottom-right', 15, 10);  
    6.   
    7. // 将处理后的图片重新保存到其他路径  
    8. $img->save('images/new_avatar.jpg');  
    9.   
    10. /* 上面的逻辑可以通过链式表达式搞定 */  
    11. $img = Image::make('images/avatar.jpg')->resize(200, 200)->insert('images/new_avatar.jpg', 'bottom-right', 15, 10);  

    4.具体用法


    读取图像

    Intervention Image读取图像超级简单,你只需要给定一个路径到make()方法,其他的烦心事Intervention Image来搞定。

    从文件读图像

    [html] view plain copy
    1. $img = Image::make('photo.jpg');  

     这个方法是高度定制的,不只能用路径,下面的输入格式都可以:

    • 基于文件系统的图像路径
    • 图像URL (allow_url_fopen 必须启用).
    • 二进制图像数据
    • Data-URL 编码图像数据
    • Base64 编码图像数据
    • PHP资源类型的gd.(在使用 GD 驱动时)
    • Imagick实例 (在使用 Imagick 驱动时)
    • Intervention\Image\Image 实例
    • SplFileInfo 实例 (用来处理器Laravel 文件上传 通过 Symfony\Component\HttpFoundation\File\UploadedFile)

    可以去API文档看更多例子。


    创建图像
    如果想生成一幅空图像,可以用canvas()并传入宽,高。背景颜色是可选的,如果没有传入,默认是透明背景。
    创建新的图像与背景颜色

    [html] view plain copy
    1. $img = Image::canvas(800, 600, '#ccc');  

     创建新图像的更多例子,去看API文档。


    编辑图像
    在使用 make() 或者 canvas()创建一个新图像实例后,可以使用其他所有的方法到这个实例。
    通常每个命令返回一个修改后的Intervention\Image\Image实例,所以可以链式调用。

    方法链:
    [html] view plain copy
    1. $img = Image::make('foo.jpg')->resize(320, 240)->insert('watermark.png');  

     看看下面的列表的一些方法。


    改变图像尺寸的方法:
     
    调整图像的方法:
     
    应用效果的方法:
     
    绘画的方法:
     
    检索信息的方法:
     
    输出图像
    从一个图像对象创建实际图像数据,通过方法 encode 生成编码图像数据,或者用 save 写一个图像到文件系统,也可以用当前图像数据发送一个HTTP响应。

    保存图片到文件系统:

    [html] view plain copy
    1. Image::make('foo.jpg')->resize(300, 200)->save('bar.jpg');  

     
    输出图像数据的方法:

    展开全文
  • 本文实例讲述了Laravel框架环境与配置操作。分享给大家供大家参考,具体如下: Laravel 5 安装根目录下 .env 文件是配置文件。打开 config/database.php 可以看到,它返回一个PHP数组,该配置文件提供了各种数据库...
  • 之前我根据网上的方法操作过,很多都不能用,然后看到一篇搭建laravel环境的文章,有了思路 1、sudo vim /etc/hosts 添加: 127.0.0.1 xuan.blog(后面我发现这里其实可以随便填。。。) 2、启用mod_rewrite sudo a2...
  • 在面向小白用户,我们来看看我们显示的 laravel5 那么这个东西在那里呢?第一: 首先 在给定的文件里面,我们的laravel 框架会先找到我们的 routes.php文件,位置位于 app\Http\routes.php 位置如下图: 在这...

    在面向小白用户,我们来看看我们显示的 laravel5

    这里写图片描述
    那么这个东西在那里呢?

    第一: 首先 在给定的文件里面,我们的laravel 框架会先找到我们的 routes.php文件,位置位于 app\Http\routes.php
    位置如下图:
    这里写图片描述
    在这个图片里面,通过 Route::get(); 方法来调度 view() 方法。简单说一下这里的 Route::get();

    Route::get()::: 是路由类,里面的get 方式请求“/”的时候,执行匿名函数。
    这个函数的功能就是 返回 view(‘welcome ‘);

    然后在说一下这个 view() 方法
    他就是显示渲染 welcome 模版位置在 resources\views\welcome.blade.pp 模版
    这里写图片描述
    大家应该 能够看见 这个 laravel 5的文字了吧,就是这个,神奇的 laravel 就在这里,修改一下,页面上显示的文字就改变了。

    这个 .blade.php 就是 当前的 模版引擎的标志

    展开全文
  • AetherUpload-Laravel 提供超大文件上传的Laravel...而当需要上传大文件时,可以这样操作操作繁琐,需要修改web服务器和早期语言的配置,而且会大量占用服务器的内存,导致服务器内存吃紧,严重的甚至传输超时或文件
  • # overtrue/wechat 5.x composer require "overtrue/laravel-wechat:^6.0" 配置 Laravel 应用 在 config/app.php 注册 ServiceProvider 和 Facade (Laravel 5.5 + 无需手动注册) 'providers' => [ // ... ...
  • laravel+rabbitMQ

    千次阅读 2020-09-14 16:38:31
    laravel+rabbitMQ前言一、安装Erlang环境1.安装erlang前安装下依赖文件2.去erlang官网下载erlang安装包3.解压4.编译安装5.配置环境变量二、安装rabbitmq1.下载2....修改 .env 文件5.封装rabbitMQ类(.


    前言

    第一次学习消息队列rabbit,因为平时使用的是laravel,因此我打算把laravel和rabbit结合起来


    提示:以下是本篇文章正文内容,下面案例可供参考

    一、安装Erlang环境

    1.安装erlang前安装下依赖文件

    yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto

    2.去erlang官网下载erlang安装包

    wget -c http://erlang.org/download/otp_src_22.3.tar.gz

    3.解压

    tar -zxvf otp_src_22.3.tar.gz
    cd otp_src_22.3/

    4.编译安装

    ./configure --prefix=/usr/local/erlang
    make && make install

    5.配置环境变量

    vim /etc/profile
    末尾加入一行:export PATH=$PATH:/usr/local/erlang/bin 
    source /etc/profile

    二、安装rabbitmq

    1.下载

    *wget -c https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.8/rabbitmq-server-generic-unix-3.8.8.tar.xz

    2.解压

    xz -d rabbitmq-server-generic-unix-3.8.8.tar.xz
    tar -xvf rabbitmq-server-generic-unix-3.8.8.tar*

    3.操作

    cd rabbitmq_server-3.8.8/sbin
    启动:rabbitmq-server
    关闭:rabbitmqctl stop
    查看状态:rabbitmqctl status
    启用插件: rabbitmq-plugins enable rabbitmq_management
    访问管理页面:http://localhost:15672 端口默认为15672

    4.添加用户

    rabbitmqctl add_user admin admin //添加用户,后面两个参数分别是用户名和密码
    rabbitmqctl set_permissions -p / admin “." ".” “.*” //添加权限
    rabbitmqctl set_user_tags admin administrator //修改用户角色,将用户设为管理员

    二、laravel安装rabbitmq

    1.Composer 安装

    composer require vladimir-yuldashev/laravel-queue-rabbitmq
    安装的时候可能会报版本不符合错误
    在这里插入图片描述

    链接: laravel-queue-rabbitmq

    这时候只要安装对应laravel的laravel-queue-rabbitmq版本即可

    2.config/app.php ,providers 中添加:

    VladimirYuldashev\LaravelQueueRabbitMQ\LaravelQueueRabbitMQServiceProvider::class,
    

    3.app/config/queue.php 配置中connections 数组中加入下列配置

    'rabbitmq' => [
    
                'driver' => 'rabbitmq',
                'connection' => PhpAmqpLib\Connection\AMQPLazyConnection::class,
                'dsn' => env('RABBITMQ_DSN', null),
    
                'factory_class' => Enqueue\AmqpLib\AmqpConnectionFactory::class,
    
                'host' => env('RABBITMQ_HOST', '127.0.0.1'),
                'port' => env('RABBITMQ_PORT', 5672),
    
                'vhost' => env('RABBITMQ_VHOST', '/'),
                'login' => env('RABBITMQ_LOGIN', 'guest'),
                'password' => env('RABBITMQ_PASSWORD', 'guest'),
    
                'queue' => env('RABBITMQ_QUEUE', 'default'),
    
                'options' => [
    
                    'exchange' => [
                        'name' => env('RABBITMQ_EXCHANGE_NAME'),
                        'declare' => env('RABBITMQ_EXCHANGE_DECLARE', true),
                        'type' => env('RABBITMQ_EXCHANGE_TYPE', \Interop\Amqp\AmqpTopic::TYPE_DIRECT),
                        'passive' => env('RABBITMQ_EXCHANGE_PASSIVE', false),
                        'durable' => env('RABBITMQ_EXCHANGE_DURABLE', true),
                        'auto_delete' => env('RABBITMQ_EXCHANGE_AUTODELETE', false),
                        'arguments' => env('RABBITMQ_EXCHANGE_ARGUMENTS'),
                    ],
    
                    'queue' => [
                        'name' => 'queuename',
                        'declare' => env('RABBITMQ_QUEUE_DECLARE', true),
                        'bind' => env('RABBITMQ_QUEUE_DECLARE_BIND', true),
                        'passive' => env('RABBITMQ_QUEUE_PASSIVE', false),
                        'durable' => env('RABBITMQ_QUEUE_DURABLE', true),
                        'exclusive' => env('RABBITMQ_QUEUE_EXCLUSIVE', false),
                        'auto_delete' => env('RABBITMQ_QUEUE_AUTODELETE', false),
                        'arguments' => env('RABBITMQ_QUEUE_ARGUMENTS'),
                    ],
                ],
                'sleep_on_error' => env('RABBITMQ_ERROR_SLEEP', false),
                'ssl_params' => [
                    'ssl_on' => env('RABBITMQ_SSL', false),
                    'cafile' => env('RABBITMQ_SSL_CAFILE', null),
                    'local_cert' => env('RABBITMQ_SSL_LOCALCERT', null),
                    'local_key' => env('RABBITMQ_SSL_LOCALKEY', null),
                    'verify_peer' => env('RABBITMQ_SSL_VERIFY_PEER', true),
                    'passphrase' => env('RABBITMQ_SSL_PASSPHRASE', null),
                ],
    
            ],
    

    这些配置githup有详细介绍

    4.修改 .env 文件

    QUEUE_DRIVER=rabbitmq
    
    #以下是新增配置
    RABBITMQ_HOST=192.168.111.174
    RABBITMQ_PORT=5672  #mq的端口
    RABBITMQ_VHOST=/
    RABBITMQ_LOGIN=admin    #mq的登录名
    RABBITMQ_PASSWORD=admin   #mq的密码
    RABBITMQ_QUEUE=queuename   #mq的队列名称
    

    5.封装rabbitMQ类(测试用)

    <?php
    
    namespace App\Module\Queue;
    
    use PhpAmqpLib\Connection\AMQPStreamConnection;
    use PhpAmqpLib\Message\AMQPMessage;
    
    class RabbitMQ
    {
        //创建静态私有的变量保存该类对象
    //    static private $connectionInstance;
    
        //防止使用new直接创建对象
        private function __construct(){}
    
        //防止使用clone克隆对象
        private function __clone(){}
    
    //    public static function getConnectionInstance(){
    //        if (empty(self::$connectionInstance)) {
    //            $config = config('queue.connections.rabbitmq');
    //            self::$connectionInstance = new AMQPStreamConnection($config['host'], $config['port'], $config['login'], $config['password'], $config['vhost']);
    //        }
    //        return self::$connectionInstance;
    //    }
    
    
        private static function getConnect(){
            $config = config('queue.connections.rabbitmq');
            return new AMQPStreamConnection($config['host'], $config['port'], $config['login'], $config['password'], $config['vhost']);
        }
    
        public static function push($queue, $messageBody, $exchange = 'router'){
            $connection = self::getConnect();
            $channel = $connection->channel();
            $channel->queue_declare($queue, false, true, false, false);
            $channel->exchange_declare($exchange, 'direct', false, true, false);
            $channel->queue_bind($queue, $exchange); // 队列和交换器绑定
            $message = new AMQPMessage($messageBody, array('content_type' => 'text/plain', 'delivery_mode' => AMQPMessage::DELIVERY_MODE_PERSISTENT));
            $channel->basic_publish($message, $exchange); // 推送消息
            $channel->close();
            $connection->close();
        }
    
        public static function pop($queue, $callback, $exchange = 'router'){
            $connection = self::getConnect();
            $channel = $connection->channel();
            $message = $channel->basic_get($queue); //取出消息
            $res = $callback($message->body);
            if($res){
                $channel->basic_ack($message->getDeliveryTag());
            }
            $channel->close();
            $connection->close();
        }
    }
    

    6.laravel创建任务类

    php artisan make:job TestQueue
    

    在终端内执行上述命令,会自动生成 app/Jobs/TestQueue.php 文件
    这里附上测试代码

    <?php
    
    namespace App\Jobs;
    
    use App\Module\Queue\RabbitMQ;
    use Illuminate\Bus\Queueable;
    use Illuminate\Queue\SerializesModels;
    use Illuminate\Queue\InteractsWithQueue;
    use Illuminate\Contracts\Queue\ShouldQueue;
    use Illuminate\Foundation\Bus\Dispatchable;
    
    class TestQueue implements ShouldQueue
    {
        use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
    
        /**
         * Create a new job instance.
         *
         * @return void
         */
        public function __construct($array = [])
        {
            RabbitMQ::push('test_queue', $array['msg']);
        }
    
        /**
         * Execute the job.
         *
         * @return void
         */
        public function handle()
        {
            RabbitMQ::pop('test_queue', function ($message){
                print_r($message);
                return true;
            });
        }
    
        public function failed(\Exception $exception)
        {
            // 给用户发送任务失败的通知,等等……
        }
    }
    
    

    6.将队列运行起来

    php artisan queue:work
    

    在这里插入图片描述

    7.把数据放进 mq 队列

    这里我新建了一个控制器来调用

    TestQueue::dispatch(['msg' => 'testMsg']); //这里把msg传到TestQueue的__construct
    

    下面我们来测试一下
    当执行到了TestQueue::dispatch([‘msg’ => ‘testMsg’]);这里之后
    终端显示
    在这里插入图片描述


    总结

    最近刚学了rabbitMQ想把它结合laravel用起来,rabbitMQ还有很多需要学习的地方。以上有不足或者问题之处请各位指出。

    展开全文
  • Laravel 表单

    千次阅读 2019-08-05 15:11:31
    3. 通过表单实现新增及操作状态提示功能;4. 表单验证及数据保持;5. 通过模型处理单选框;6. 通过表单实现修改;7. 表单中查看详情及删除。 1. 静态资源管理以及模板布局; public/statics/ 导入 Bootstrap 以及 ...
  • Laravel 5 中集成 Intervention Image 实现对图片的创建、修改和压缩处理Intervention Image是一个PHP图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成到...
  • laravel用户认证相关

    2019-08-17 12:13:59
    Laravel 自带了用户认证功能,利用此功能可快速构建用户中心 1,执行认证脚手架命令 php artisan make:auth 2,操作 进入login页面,发现可以注册登录等 3,查看文件修改状态 <1>web.php路由 A....
  • Laravel 5 中集成 Intervention Image 实现对图片的创建、修改和压缩处理 Intervention Image 是一个 PHP 图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成...
  • Learn Laravel 5id="date" style="text-align: right;"> <link href="//cdn.bootcss.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet"> ...
  • </li><li>修改 <code>learnlaravel5/resources/views/admin/article/index.blade.php</code> 中的 <code>{<!-- -->{ url('admin/article/create') }}</code> 为 <code>{<!-- -->{ url('admin/articles/...
  • Learn Laravel 5 style="text-align: center; margin-top: 50px;"> <link href="//cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"> &...
  • 而当需要上传大文件时,此种方式不仅操作繁琐,需要修改web服务器和后端语言的配置,而且会大量占用服务器的内存,导致服务器内存吃紧,严重的甚至传输超时或文件过大无法上传。很显然,普通的文件上传方式已无法...
  • Laravel 5 中集成 Intervention Image 实现对图片的创建、修改和压缩处理 Intervention Image是一个PHP图片操作处理库,为图片创建、修改及压缩等处理提供了便捷方式。此外,还提供了服务提供者和门面以便集成到...
  • 此方法是通过php原生写法(或配置)实现的session入redis,但是在通常情况下, 大家都是... 如tp5以上版本, 可以通过更改session.php配置文件傻瓜式的实现该功能.-- 转载注配置方式如下:方法一:修改 php.ini 的设置se...
  • Laravel提供了3种操作数据库方式:DB facade(原始方式)、查询构造器和Eloquent ORM。下面我将逐一讲解。 数据库的配置文件在config目录下的database.php里。打开这个文件,找到MySQL的配置项。 ...
  • lavavel连接数据库的增删改查操作

    千次阅读 2016-07-26 17:43:12
    配置修改: 1. .env中进行配置: --------------- APP_ENV=local APP_DEBUG=true APP_KEY=FPg9LRkHTj5j14ig7ETzQhG29r5sEWNR DB_HOST=127.0.0.1 DB_DATABASE=laravel_demo DB_USERNAME=root DB_...
  • 相比于国外的框架,如YII2、Laravel、CI等,thinkphp确实会有不够先进的地方,但TP5发布后,我决定在以后的学习和工作中使用ThinkPHP,因为: 相对于TP3.x版本,ThinkPHP V5.0是一个颠覆和重构版本,采用全新的架构...
  • 百度官方pcs api文档:http://developer.baidu.com/wiki/index.php?title=docs/pcs/overview,上面有各种语言的SDK,我用的laravel5,直接导里面的php SDK还用不了,稍做了修改才能用的。 看完上面两篇文章,基本就...
  • Indirect modification of overloaded element of XXX has no effect,网上搜索了一下,很多框架会报这个错误,比如Laravel、YII、Thinkphp5等,错误的直译意思为:间接修改XXX的重载元素没有效果。解决办法有两种,...
  • 如果你之前安装过,需要升级版本,那么进行下面操作步骤 1、拉下最新代码覆盖原代码 2、执行composer update 安装相关依赖 3、执行php artisan XiaoT:update # 执行php artisan XiaoT:update 出现下面错误 Class ...
  • <p>fpm部署上线操作: 1. nginx root 指令指向一个软链目录 /path/to/link_dir, 软链指向 /path/to/version/01; 2. 上线时, 会创建 /path/to/version/02, 将 /path/to/link_dir 修改指向到...hhxsv5/laravel-s</p></div>
  • <div><p>在原生Laravel或者Lumen中,中间件的terminate方法会在响应输出后执行: <pre><code> // 这是Lumen的\Laravel\Lumen\Concerns\RoutesRequests::run 方法 ...hhxsv5/laravel-s</p></div>

空空如也

空空如也

1 2
收藏数 35
精华内容 14
关键字:

laravel5修改操作