Docker Compose로 PHP, Nginx, MySQL 개발환경 구성하기
·
Docker
목표Docker compose를 사용하여 각각의 Nginx, PHP, MySQL 컨테이너를 실행하고, php 개발환경을 구성한다. 파일구성docker-compose.ymlservices: php: build: ./docker/php container_name: php ports: - "9000:9000" expose: - "9000" volumes: - {앱 경로}:/home/app mysql: image: mysql:8.0 container_name: db restart: always environment: MYSQL_DATABASE: {DB} MYSQL_USER: {DB 유저} MYSQL_PASS..
PHP sort()
·
Web/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와 결합하여 사용 대/소문자 구분없이 정렬
PSR-1: Basic Coding Standard
·
Web/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()
·
Web/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()
·
Web/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 ..