[已解决]在命令行中使用Db类插入数据不起作用

fgt1t5y

问题描述

在命令行中使用Db类插入数据不起作用

程序代码或配置

<?php

namespace app\command;

use support\Db;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Output\OutputInterface;

class Migrate extends Command
{
    protected static $defaultName = 'user:create';

    protected function configure()
    {
        $this->addArgument('username', InputArgument::REQUIRED, 'Username');
        $this->addArgument('email', InputArgument::REQUIRED, 'User Email');
        $this->addArgument('password', InputArgument::REQUIRED, 'User Password');
    }

    protected function execute(InputInterface $input, OutputInterface $output)
    {
        Db::connection('default')->table('users')->insert([
            'id' => 10,
            'display_name' => $input->getArgument('username'),
            'username' => $input->getArgument('username'),
            'password' => password_hash($input->getArgument('password')),
            'email' => $input->getArgument('email'),
            'avatar_uri' => '0',
            'allow_login' => 1
        ]);

        return self::SUCCESS;
    }
}

重现问题的步骤

截图

在命令行中允许命令后没任何作用

操作系统环境及workerman/webman等具体版本

系统:Windows11
PHP:8.1
Workerman:4.1.15
Webman:1.5.0
webman-console:1.3

146 1 0
1个回答

fgt1t5y

解决了,是password_hash少参数了

  • 暂无评论
×
🔝