20240805

2024. 8. 5. 23:09SNS 프로젝트 일지/PHP

728x90
반응형

회사  유저 DB 정보를 로컬 PC 에 받았다.

 

회사 유저의 PASSWORD 는 MD5 으로 HASH 되어있었다.

 

이부분을  Laravel Breeze 에서 사용 하고 있는 Brycpt 로 변환 하기 위해 

 

php artisan migrate:refresh --seed  

 

cli 를 실행시 

 

DataSeeder 안에서 m5 를 먼저 복호화 한후 Brycpt 로 암호화를 하여 Users DB migration 을 하였다.

 

그리고 라라벨11에서는 service 커맨드가  기본적으로  지원하지 않는다 

 

그래서 php artisan make:service 커맨드를 만들기로 했다.

 

1. php artisan make:command  MakeService 

 

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Illuminate\Support\Facades\File;

class MakeService extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'make:service {name}';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Create a new service class';

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle()
    {
        $name = $this->argument('name');
        $servicePath = app_path("Services/{$name}.php");

        if (File::exists($servicePath)) {
            $this->error("Service {$name} already exists!");
            return 1;
        }

        $stub = File::get(base_path('stubs/service.stub'));
        $serviceContent = str_replace('{{ class }}', $name, $stub);

        File::ensureDirectoryExists(app_path('Services'));
        File::put($servicePath, $serviceContent);

        $this->info("Service {$name} created successfully.");
        return 0;
    }
}

 

php artisan make:service 에 대한 커맨드를 생성 해준다.

 

그리고 커맨드로 생설될 서비스 파일의 기본 디폴트를 만들어준다 .

 

2. mkdir stubs touch

 

3. stubs/service.stub

 

<?php

namespace App\Services;

class {{ class }}
{
    // 서비스 로직을 여기에 작성합니다.
}

 

 

4. 이제 커맨드를 등록 해주어야 하는데

 

라라벨 11 같은 경우에는 make:command 할 시에 커맨드가 자동으로 등록된다.

 

 

 

 

728x90
반응형

'SNS 프로젝트 일지 > PHP' 카테고리의 다른 글

20240808  (0) 2024.08.08
20240807  (0) 2024.08.07
20240806  (0) 2024.08.06
20240803  (0) 2024.08.03
20240731  (0) 2024.07.31