목표Docker compose를 사용하여 Nginx, PHP, MySQL 컨테이너를 생성하고, Laravel 프로젝트의 개발환경을 구성한다. 파일구성2-1. docker-compose.ymlversion: "3.7"services: php: build: context: . dockerfile: ./php/Dockerfile restart: always ports: - "9000:9000" expose: - "9000" volumes:# - ./php/config/custom.ini:/usr/local/etc/php/conf.d/custom.ini - ./app:/home/app mysql: image: mysql:8..
php
·PHP
sort(array &$array, int $flags = SORT_REGULAR): true 정렬 유형 flag SORT_REGULAR - 적상적으로 항목을 비교 SORT_NUMERIC - 숫자로 항목을 비교 SORT_STRING - 문자열로 항목을 비교 SORT_LOCALE_STRING - 현재 로케일을 기준의 문자열로 항목을 비교. setlocale()을 사용하여 변경된 로케일을 사용 SORT_NATURAL - natsort()와 같은 "자연 순서"로 항목을 비교 SORT_FLAG_CASE - 대/소문자 구분없이 정렬하기 위해 SORT_STRING 또는 SORT_NATURAL와 결합하여 사용 대/소문자 구분없이 정렬
·PHP
PSR-1: 기본 코딩 표준 1. 파일(Files)1-1.PHP 태그(PHP Tags)PHP 코드는 > 또는 을 사용해야 한다(MUST) 1-2. 문자 인코딩(Character Encoding)PHP 코드는 BOM 없이 UTF-8을 사용해야한다.(MUST) 1-3. 부작용(Side Effects)파일은 "Side effects"를 발생시키지 않으며 새로운 클래스, 상수, 함수 등 을 선언하거나(SHOULD),"Side effects" 로직을 실행 해야한다(SHOULD).둘 다(선언과 "Side effects") 수행하면 안된다(SHOULD NOT). "Side effects"는 선언된 클래스, 함수, 상수 등 과 직접적으로 관련되지 않은 로직을 파일에 포함하여 실행하는 것을 의미한다. "Side eff..
·PHP
PDO(PHP Data Objecs)방식은 기존 PHP mysql 연결함수(mysql, mysqli)보다 향상된 기능의 객체지향적 DB 연결방식 기존 함수와 비교했을때의 차이점은 크게 2가지이다. 1. 준비구문(Prepare Statements)을 이용한 SQL 삽입공격(SQL Injection) 방어 및 성능향상 2. MySQL, Oracle, MS SQL, PostgreSQL, ... 여러 종류의 DB를 동일한 방식으로 접근 PDO로 DB에 연결 $host = 'localhost'; // host 주소 $database = 'database'; // database 이름 $user = 'root'; // host user $password = 'root'; // host password try { $..
·PHP
mysqli로 MySQL 서버에 연결 $host = 'localhost'; // host 주소 $user = 'user'; // host user $password = 'pass'; // host password $database = 'testDB'; // database 이름 $con = mysqli_connect($host, $user, $password, $database); // 연결 실패시 if(!$con) { die('연결 실패'.mysqli_error($con)); } PHP: mysqli::__construct - Manual mysqli can succeed in surprising ways, depending on the privileges granted to the user. For ..