DI, IOC란 DI, IOC 단어는 스프링과 라라벨 같은 웹 프레임워크를 하다 보면 알아야 하는 개념 중 하나입니다. 해당 포스트에서는 DI, IOC 개념을 알 수 있습니다. DI Dependency Injection(의존성 주입)은 객체의 의존 관계를 외부에서 주입한다. 여기서 의존 관계는 아래 코드로 알 수 있습니다. class AClass{ function test(){ echo "test"; } } class BClass{ private $internalAClass; public function __construct(AClass $internalAClass){ $this->internalAClass = $internalAClass; } public function getATest(){ echo ..
Laravel
Laravel Sail 라라벨 환경을 도커 개발환경으로 간편하게 만들 수 있게 도와주는 경량형 CLI(명령 줄 인터페이스)입니다. Docker Desktop만을 설치하면 도커 개발 환경으로 라라벨 환경을 쉽게 구축할 수 있습니다. 귀찮게 VM, APM, Composer 등등 신경 안쓰고 다들 쓰는 도커로 세팅해봅시다. Laravel Sail은 Mac os, Linux, WSL2를 지원합니다. Docker Desktop 로컬 환경에서 편리하게 Docker를 사용하게 도와줍니다. Docker는 복잡한 세팅을 하나의 파일로 관리할 수 있게 해 주는데 이를 이미지라고 합니다. OS의 이미지와 유사한 개념이라 보시면 됩니다 Container는 해당 이미지를 실제로 실행 시킨 상태입니다. Docker와 가상머신의 ..
개요 2019년부터 워드프레스 및 라라벨로 개발하고 있는 이제는 3년 차 웹 개발자입니다. 슬슬 이직을 하고 싶다는 생각이 계속 들고 있습니다, 채용 시장조사를 하던 중 PHP를 계속하는 게 제 커리어 적으로 좋을지 의문이 들었습니다. 아마 저처럼 처음 회사에 들어와서 처음 PHP를 접하여 사용하는 분들이 많을 것이며 마찬가지로 입사 후 라라벨와 워드프레스 또한 처음 배우신 분들 일 것입니다. 그러면 자연스럽게 저와 비슷한 고민을 할 것 같습니다 제 글이 참고가 되었으면 좋겠네요. 인터넷 반응 PHP에 대한 국내 개발 커뮤니티 반응은 대체로 아래와 같습니다. PHP는 별로다. 취업이 안된다. 유행이 지났다. 저는 산업기능요원으로 개발 업체에서 복무하고 있습니다. 산업기능요원을 진행하면서 군 훈련소에 입소..
0. 개요 지난번 포스팅으로 아티즌 콘솔 기능을 알아봤습니다. https://seung.tistory.com/entry/Laravel9-%EB%9D%BC%EB%9D%BC%EB%B2%A8-%EC%95%84%ED%8B%B0%EC%A6%8C-%EC%BD%98%EC%86%94-%EB%A7%8C%EB%93%A4%EA%B8%B0Artisan-console [Laravel9] 라라벨 아티즌 콘솔 만들기(Artisan console) 0. 개요 라라벨에서는 php artisan을 이용해서 기본적인 명령어를 실행할 수 있습니다. 익숙한 걸로 Controller 생성과 Model 생성이 있죠. 라라벨은 직접 php artisan 명령어를 만들 수 있도록 지원합니다. seung.tistory.com 이번에는 실무에서 쓰일법..
0. 개요 라라벨에서는 php artisan을 이용해서 기본적인 명령어를 실행할 수 있습니다. 익숙한 걸로 Controller 생성과 Model 생성이 있죠. 라라벨은 직접 php artisan 명령어를 만들 수 있도록 지원합니다. 이번 포스팅에서는 명령어로만 아래 기능을 수행할 수 있는 프로젝트를 만들어봅시다. 신규 멤버 직접 추가하기 및 무작위로 추가하기 멤버 리스트 보기 특정 멤버가 있는지 확인하기 특정 멤버를 제외하기 멤버 중에서 랜덤으로 한 명 추첨하기 1. 프로젝트 세팅 및 파일 생성 Laravel 9버전으로 프로젝트를 만들어 주고 각각의 라라벨 세팅이 맞춰 설정해줍시다. composer create-project laravel/laravel laravel_cli "9.*" cd laravel..
0. 개요 라라벨은 기본적으로 테스트를 권장합니다. 프로젝트 생성 시 바로 아래 경로로 tests 폴더가 생성됩니다. 이번에 만들 프로젝트는 간단한 추첨 기능을 포함한 사이트입니다, 여기에 테스트 기능을 적용해서 해볼 것입니다. 1. 프로젝트 생성 및 파일 생성 우선 프로젝트를 만들어 주시고 composer create-project laravel/laravel laravel_testing "9.*" cd laravel_testing composer install php artisan key:generate .env 파일 생성하여 DB 연결 작업 및 환경에 따라 가상 호스트 작업을 마쳐 주세요. 기능에 필요한 사용할 파일들을 artisan을 통해 만들어 줍시다. php artisan make:model ..
0. 개요 구글 SMTP를 이용해서 라라벨 이메일 보내기 사이트를 만들어볼 것입니다. 이메일의 템플릿은 Blade 파일을 사용하지 않고 Markdown으로 해보려고 합니다. Blade : 기존 view와 같은 방식으로 이메일 템플릿을 작성 Markdown : 직접 커스텀한 태그 또는 기본 태그를 사용해 이메일 템플릿을 작성 라라벨 공부 다른 글 바로가기 1. Project Setting 우선 Mail 프로젝트 만듭시다 composer create-project --prefer-dist laravel/laravel mail "9.*" cd mail composer install php artisan key:generate 이제 각자의 환경에 맞춰 가상 호스트를 잡거나 DB 연결 등 부가적인 세팅을 해줍시다..
아래 crud 예제를 스케폴딩 삼아 작업을 합니다. 시간이 괜찮으신 분들은 초급 예제를 해보는 것을 추천합니다 시간이 없고 옵저버만 알고 싶은 분들은 훑어보기만 해도 많은 도움이 될 것입니다. Laravel CRUD 초급 예제 HTML 삽입 미리보기할 수 없는 소스 라라벨 공부 바로가기 개요 옵저버는 관측자라는 뜻으로 observer pattern의 그 observer가 맞습니다. 옵저버의 목록에 객체를 등록하면 객체가 행동을 취하면 옵저버에게 통지가 가고 옵저버는 그에 맞춘 행동을 취합니다. 그 스타의 옵저버와 역할이 같습니다. 상대방 기지를 몰래 감시하다가 상대 행동에 따라 맞춤형으로 대처하는 것이죠. 위에서 말했듯이 이전 글을 기초로 진행합니다. 이전 글을 모르시는 분은 간단한 CRUD로 Produ..
개요 스케줄링이란 서버에다가 특정 시간마다 또는 특정 주기마다 작업을 예약해 놓는 기능을 의미합니다. 라라벨에서는 스케줄링 기능을 지원하고 있습니다. 스케줄링 우선 로컬 개발환경에서 1분마다 로그를 찍는 스케줄링을 만들어봅시다. 아래의 코드처럼 수정해 줍시다. app/Console/Kernel.php
라라벨 공부 바로가기 개요 이전에 포스팅한 라라벨 난수 액셀 다운로드 포스트가 기억나시나요? 안 나면 다음 주소로 => 바로가기 Laravel9 라라벨 난수 액셀 다운로드 (Laravel-Excel) 라라벨 공부 바로가기 개요 이전 글에서 사용한 Laravel Excel 라이브러리를 사용해 난수 엑셀 생성기를 만들어 봅시다. Laravel Excel를 설치하지 않으셨다면 아래 글을 참고해주시기 바랍니다. 바로 seung.tistory.com 사실 해당 글에서 받는 파일은 액셀(xlsx)이 아닌 csv 파일입니다. csv는 Comma Separated Values로 쉼표로 구분되는 값을 의미합니다. 해당 포스트에서는 csv를 읽어서 디비에 저장할 수 있게 하려고 합니다. CSV 파일 만들기 이전에 만든 기..