PHP artisan migrate 报错显示 could not find driver ,怎么办?

PHP artisan migrate 报错显示 could not find driver ,怎么办?

记录下自己的错误

一、

1、原因是没有pdo扩展导致的,

2、解决办法:打开php.ini,然后去掉以下两行代码之前的分号(;)即可。如下;

extension=php_pdo_firebird.dll

extension=php_pdo_mysql.dll

二、

但是我运行pdo链接,还是报这个错。最后发现是自己的pdo链接字符串有问题,导致无法连接。原因是单引号与双引号的作用没有搞明白,单引号下的变量是php是不会去解析的,双引号与没有符号下的变量php才会去解析。

原文:https://blog.csdn.net/sinat_34322082/article/details/80417002

以上方法都不对的情况下:

本地环境:

PHP artisan migrate 报错显示 could not find driver ,怎么办?

PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

 

发现在本地使用PHPstorm中执行php artsian insert:order 命令执行失败,无法找到驱动,最后发现在vagrant搭建的环境中,本地配置不全,在使用Xshell连接到这机器即可

vagrant环境

PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

 PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

php artisan make:command Building/InsertOrder  

生成的脚本文件存储在command/building 目录下,带命名空间

PHP artisan migrate 报错显示 could not find driver ,怎么办?

 

脚本文件:InsertOrder.PHP

<?php

namespace App\Console\Commands\Building;

use App\Building;
use App\ModelList\Buildings\BuildingPaymentTest;
use Illuminate\Console\Command;

class InsertOrder extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'Insert:order';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = '修改补充buildingpayment表中的订单编号';

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Execute the console command.
     *
     * @return mixed
     */
    public function handle()
    {
        //补充订单编号

        $this->index();
    }

    /**
     * @author lxw
     */
    public function index()
    {

        $buildingsTest = BuildingPaymentTest::get(['id', 'building_id', 'created_at']);

        if ($buildingsTest->isEmpty()) {
            dd('没有数据');
        }

        $num = 0;

        foreach ($buildingsTest as $building) {
            $createTime = date('Ymd', strtotime($building['created_at']));
            //生成唯一订单编号,规则:年月日+5位随机数
            $randStr = $createTime . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);
            $companyId = Building::where('id', $building->building_id)->withTrashed()->get(['company_id'])->toArray();

            if (empty($companyId)) {
                continue;
            }
            $updateParam = [
                'order_id' => $randStr,
                'company_id' => $companyId[0]['company_id'],
                'owner_id' => 1,
                'sales_person' => 'admin',
                'payment_amount' => '0',
                'start_time' => $building['created_at'],
            ];
            BuildingPaymentTest::where('building_id', $building->building_id)->update($updateParam);


            $num++;
            dump('楼宇' . $building->building_id . '完成,已经完成' . $num . '条');
//            dd('停止一下');
        }

        dd('全部完成');
    }


}

  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112357.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android加密参数定位方法

    android加密参数定位方法作者正在编写一本爬虫逆向相关的书籍《书名还没有想好》。目前刚写了50页,上图是文章目录的一部分,想问一下大家现在对哪阶段的内容会更感兴趣,或者哪部分的内容会更有学习力,或者帮我想个书名。可在本文末留言告知,感谢大家。下面开始本文正文内容。在逆向一个Android程序时,如果只是盲目的分析需要阅读N多代码才能找到程序的关键点或Hook点,本文将分享一下如何快速的找到APP程序的加密参数位置,其实不论是找关键位置、找hook点,找加密参数、代码逻辑追踪,都是类似的处理方法。巧用搜索-静态分析

    2022年5月17日
    27
  • Linux文件的压缩和解压命令tar

    Linux文件的压缩和解压命令tar压缩文件扩展名打包并压缩文件tar的参数语法:tar[参数]压缩包名一个或多被打包的文件功能作用压缩一个或多个文件-c必须,创建一个压缩包-v可选,显示压缩的详细信息-z压缩,如果没有则只是打包-f<压缩文件名>后面必须指定文件名操作演示:定位于root目录,将当前目录下的Hello.java和Hello….

    2022年5月17日
    64
  • 七、hibernate中的持久层模板操作HibernateTemplate的用法「建议收藏」

    七、hibernate中的持久层模板操作HibernateTemplate的用法「建议收藏」利用模板操作来替换掉持久层的session,必须先将spring和hibernate之间进行整合,整合的applicationContext配置文件介绍在:https://blog.csdn.net/IT_CREATE/article/details/86141823 那么在持久层的代码就如下面这样写:1、对于增删改(和session的操作差不多,也有save、update、del…

    2022年6月17日
    36
  • SpringMVC+Spring+Mybatis实现登录注册Demo「建议收藏」

    SpringMVC+Spring+Mybatis实现登录注册Demo「建议收藏」使用环境:MyEclipse/Eclipse+Tomcat+MySql。使用技术:SpringMVC+Spring+Mybatis。实现效果登录页面:密码错误提示登录成功后注册注册成功目录结构一、配置文件beans.xml<?xmlversion=”1.0″encoding=”UTF-8″?><beansxmlns=”http://www.springframework.org/schema/beans”xmlns:x.

    2022年4月30日
    60
  • Eclipse快捷键 l另起一行|快速转换编辑器|重命名|下一个错误及快速修改|为本地变量赋值

    Eclipse快捷键 l另起一行|快速转换编辑器|重命名|下一个错误及快速修改|为本地变量赋值

    2021年7月18日
    48
  • 动态规划——背包问题(详解)

    动态规划——背包问题(详解)动态规划是我最早接触的算法,一开始非常简单,固定模板题,后来愈发愈发难起来了,条件,状态压缩等等,难点主要是,状态怎么表示,状态转移方程怎么写,这篇文章将会从背包五大问题详解,希望能帮助到大家去类比,思考其他动态规划题目。首先先来看看动态规划的定义:动态规划算法是通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推(或者说分治)的方式去解决。动态规划算法的基本思想与分治法类似,也是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后一子问题的求解提供了有用的信息。

    2022年7月26日
    24

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号