반응형

개발 꿀팁 546

Nginx가 Upstream을 사용하여 움직임 분리하기

1. 왜 동정을 분리해야 하는가 자원을 분리하여 불필요한 청을 줄이다소모를 요구하며, 요청 지연 시간을 줄인다. 비고: 나 여기, nginx야.정적 자원을 정리하고, 아파치는 동적 자원을 처리한다. 장면 분석: 1, 분리되지 않은 이전 장면 (1) 클라이언트에서 url 요청 중스페이서(예: nginx, apache) (2) 미들웨어는 url 요청에 따라해당하는 디렉터리, 프로그램 프레임워크 (3) 프로그램 프레임워크 실행 프로그램 논리 (4) 프로그램 로직 요구 해당 데이터자원 (5)데이터 자원을 고객에게 반환끝 비고: 사실, 정적 자원은 필요하지 않습니다.동적 요청을 거쳐 직접 미들웨어를 클라이언트에 반환하면 된다.그러니까 1단계랑 5단계만 하면 되는 거예요 설정 파일 보기: upstream php_a..

개발 꿀팁/PHP 2022.07.27

PHP 정책 패턴 쓰기

1. 추상 정책 인터페이스 만들기 interface GoodsStrategy{ public function modifyState(); } 2, 필요한 알고리즘 클래스 작성 class SupplerCommodityPoolClass implements GoodsStrategy{ protected $goodsObj; protected $publicGoodsSaveObj; public function __construct(PublicGoodsSave $publicGoodsSaveObj,Goods $goodsObj) { $this->publicGoodsSaveObj = $publicGoodsSaveObj; $this->goodsObj = $goodsObj; } public function modifyState()..

개발 꿀팁/PHP 2022.07.27

CrossPHP 프레임워크의 상용 동작

1. 뷰 컨트롤러에서 리소스 파일의 절대 경로를 생성하기 위해 $this->res() 메서드를 사용합니다 $this->res('css/style.css'); 생성된 연결은 http://youdomain.com/static/css/style.css입니다. 2. 지정한 앱의 이름을 가진 연결 생성 $this->appUrl() 첫 번째 매개 변수는 기초 url이고, 두 번째 매개 변수는 앱 이름, 세 번째 매개 변수입니다.컨트롤러용: 메서드 네 번째 매개 변수는 열입니다.표, 다섯 번째 매개 변수는 암호화 연결 생성 여부를 나타냅니다. 3. 레이아웃 파일에서 뷰 컨트롤러를 호출하는 방법 레이아웃 파일에 $this->action() 을 직접 사용하면 뷰 컨트롤러의 메소드를 호출할 수 있습니다. 다음 예와 같습니..

개발 꿀팁/PHP 2022.07.27

Docker의 PHP 설치 방법

1. PHP 소스 도크를 위해서r 미러링은 최소이며, PHP의 소스 파일은 압축 패킷의 형태로 미러링되어 있으며, docker-php-source 빠른 스크립트를 제공하여 소스 파일의 압축 패킷의 압축 해제(extract) 및 압축 해제 후의 파일을 삭제(delete)하는 작업을 수행합니다. 예: FROM php:7.1-apache RUN docker-php-source extract \ # 여기에서 필요한 작업을 시작합니다 \ && docker-php-source delete 주의: 삭제하지 않으면 압축 해제된 파일이 미러링된 파일 크기를 크게 늘릴 수 있습니다. 2. 설치 확장 2.1. 코어 확장 여기 주로 공식 docker-php-ext-confi를 사용하는데gure와 docker-php-ext-i..

개발 꿀팁/PHP 2022.07.26

PHP 구현 이분 검색 알고리즘

이분 검색 이분 검색은 반쪽 검색(Binary Search)이라고도 하는데, 효율적인 검색 방법입니다.단, 반쪽 탐색을 위해서는 선형 테이블이 순차적으로 저장되어야 하며, 테이블 안의 요소가 키워드에 따라 정렬되어야 한다. 먼저, 표 안의 요소가 오름차순으로 배열되어 있다고 가정하고, 표의 중간 위치 기록의 키워드와 검색 키워드를 비교하며, 만약 양자가 같다면 검색이 성공한다. 그렇지 않으면 중간 위치 기록을 이용하여 표를 앞, 뒷 두 개의 하위 표로 나눈다.중간 위치에 기록된 키워드가 검색 키보다 크면 이전 하위 테이블을, 그렇지 않으면 이전 하위 테이블을 찾습니다.조건을 만족시키는 레코드를 찾을 때까지 반복하거나, 하위 테이블이 존재하지 않을 때까지 검색을 수행할 수 없습니다. 순환 방법을 사용하여 ..

개발 꿀팁/PHP 2022.07.26

phpset_error_handler() 중요 사용법

set_error_handler라는 함수의 역할은 잘못된 경로 유출을 방지하기 위한 것이다 무엇이 잘못된 경로로 유출되었는가? 우리가 프로그램을 쓰면 문제가 생길 수밖에 없고 (항상 문제가 생길 수 있다:razz:) PHP는 우연히 만난다.오류가 발생했을 때 오류 스크립트의 비트를 제공합니다배치, 행수 및 원인 그리 대단한 것은 아니라고 말하는 사람이 많다.확실히 프로그램 디버깅 단계에서는 확실히 별거 아닙니다.그리고 나는 잘못된 경로를 주는 것이 필요하다고 생각한다. 그러나 실제 경로를 누설한 결과는 상상조차 할 수 없는 것으로, 어떤 침입자에게 이 정보는 매우 중요하다.사실 지금 많은 서버가이 문제가 존재한다. 일부 네트워크 관리자는 PHP 프로필의 Display_errors를 Off로 설정합니다해결..

개발 꿀팁/PHP 2022.07.26

PHP 배열 필터 null 값 array_filter

PHP는 배열의 빈 값을 더 쉽게 필터링할 수 있는 함수 array_filter를 제공합니다. array_filter 콜백 함수를 사용하여 배열의 요소를 필터링하고 필터링된 배열들을 반환합니다. array 배열의 모든 값을 탐색하고 callback 콜백 함수로 전달합니다. callback 콜백이 반환되면 true, array 배열의 현재 값을 되돌려줍니다결과 array 배열에 있습니다.배열 키의 이름은 변경되지 않습니다. callback 콜백 기능이 제공되지 않으면 배열의 array의 "null" 요소를 삭제합니다. 예 1: // 콜백 함수를 사용하지 않고 빈 값을 필터링할 수 있습니다 $entry = [ 0 => 'foo', 1 => false, 2 => -1, 3 => null, 4 => '', 5 ..

개발 꿀팁/PHP 2022.07.26
반응형