본문 바로가기

PHP68

[PHP] 분산 설정 파일 사용법 안녕하세요 오늘은 APACHE 서버에서 PHP를 사용할 때 유용하게 쓰이는 분산 설정 파일에 대해 알아보겠습니다. 처음 웹서버를 만드시고 개발을 하시다 보면 URL을 그냥 index.php 등 php파일을 그대로 노출하면서 접속하는 방법을 주로 쓰실텐데요, 그냥 혼자 공부하면서 개발하실 때는 크게 문제가 되진 않지만 해당 방식을 계속 사용하면 웹 서비스에 디렉토리가 바로 노출이 되니 보안상 그렇게 좋은 방법은 아닙니다. 이런 경우 분산 설정 파일(.htaccess)를 사용하면 그런 문제를 일부 해결할 수 있는데요. 분산 설정 파일을 사용하기 위해서 먼저 .htaccess의 구조에 대해서 알아보겠습니다. 해당 파일은 파일명 없이 확장자만 .htaccess로 생성된 파일입니다. Router 설정을 적용할 디.. 2024. 2. 1.
[PHP] 실수형 변수를 다루는 유용한 함수들과 그 활용 실수형 데이터는 수학적 계산, 데이터 처리, 금융 애플리케이션 개발 등에서 널리 사용됩니다. 이러한 상황에서 PHP의 내장 함수들을 활용하면 실수형 데이터를 더욱 효과적으로 다룰 수 있습니다. 여기서는 실수형 관련 함수들과 그들의 사용 예시, 그리고 개발 상황에서의 활용 방법에 대해 살펴보겠습니다. 1. `floatval()` `floatval()` 함수는 변수를 실수형으로 변환합니다. 활용 예제 문자열이나 다른 타입의 데이터를 실수로 변환해야 할 때 사용합니다. 사용자 입력이나 데이터베이스로부터 문자열 형태로 받은 숫자를 실수로 처리하려는 경우에 유용합니다. 2. `is_float()` `is_float()` 함수는 변수가 실수형인지 확인합니다. 활용 예제 변수가 실수형인지 확인하고 싶을 때 사용합니다.. 2024. 1. 26.
[PHP] 세션을 이용해 간단한 로그인 시스템 만들기 안녕하세요 오늘은 php를 이용해 간단한 로그인 시스템을 만들어보겠습니다. 매우 기본적인 로그인 시스템을 세션을 이용하여 구현한것이며 사용자 이름과 비밀번호가 하드코딩되어 있습니다. 실제 애플리케이션에서는 데이터베이스를 통해 사용자 정보를 관리해야 합니다. login.php 파일에 다음과 같이 코드를 작성합니다. 로그인 사용자 이름: 비밀번호: 로그인 welcome.php파일에 다음과 같이 코드를 작성합니다. 환영합니다, ! 로그아웃 logout.php 파일에 다음과 같이 코드를 작성합니다. 2024. 1. 25.
[PHP] FullText-Search 처리하는 방법 안녕하세요 오늘은 FullText-Search 처리를 하는 방법에 대해 알아보겠습니다. 저희는 MYSQL을 사용할 때, LIKE 연산을 통한 패턴 일치 검색을 사용하는데요. 하지만 저번에 보여드린 인덱스 처리를 하다보면 검색에 조금 제한이 생기기 마련입니다. https://stickode.tistory.com/1036 이럴 때 고려해볼 수 있는 것이 바로 전문 검색, FullText-Search입니다. 이것은 단어 또는 구문에 대한 검색을 의미하며, 게시물 내용이나 제목 등과 같이 문서 내 키워드를 검색할 수 있습니다. 정리하자면 FullText-Search는 첫 글자 뿐 아니라 중간의 단어나 문장으로도 인덱스를 생성해 주기 때문에 순식간에 검색 결과를 얻을 수 있다. InnoDB와 MyISAM 테이블에.. 2024. 1. 23.
[PHP]정수형 변수를 다루는 유용한 함수들과 그 활용 PHP 개발 중에 정수형 데이터를 효과적으로 다루기 위해 몇 가지 유용한 내장 함수들을 활용할 수 있습니다. 이러한 함수들은 데이터 변환, 유효성 검사, 계산 및 비교 등 다양한 상황에서 매우 유용하게 사용될 수 있습니다. 여기서는 PHP에서 자주 사용되는 정수형 관련 함수들과 그들의 사용 예시, 그리고 실제 개발 상황에서 어떻게 활용될 수 있는지를 살펴보겠습니다. 1. `intval()` `intval()` 함수는 변수를 정수로 변환하는 데 사용됩니다. 활용 예제 문자열이나 다른 타입의 데이터를 정수로 변환해야 할 때 유용합니다. 예를 들어, 사용자로부터 나이를 문자열로 입력받았을 때 이를 정수로 처리하려는 경우에 사용됩니다. 2. `is_int()` `is_int()` 함수는 변수가 정수인지 확인하는.. 2024. 1. 17.
[PHP] 데이터베이스 인덱스 처리하는 방법 안녕하세요 오늘은 PHP에서 데이터베이스에서 인덱스 처리하는 방법을 알아보겠습니다. 데이터베이스 인덱스 처리는 데이터베이스의 효율성과 성능을 향상시키기 위한 중요한 기술입니다. 인덱스는 데이터베이스 테이블의 특정 컬럼(열)에 대한 포인터를 제공해 데이터 검색 시 검색 대상의 양을 줄여 검색 속도를 빠르게 만들어 주는데요. 하지만 이러한 인덱스도 잘못 사용하면 몇 가지 단점을 초래할 수 있습니다. 그럼 먼저 장단점을 알아보겠습니다. 장점 1. 검색 성능 개선 : 특히 대규모 데이터베이스에서 검색 속도가 크게 향상됩니다. 2. 정렬된 데이터 접근 : 인덱스를 통해 데이터를 정렬된 상태로 빠르게 접근할 수 있습니다. 단점 1. 추가 저장 공간 필요 : 인덱스 자체가 별도의 저장 공간을 차지합니다. 2. 쓰기 .. 2024. 1. 14.
[PHP]PHP에서 로그 남기기 웹 개발을 처음 하게 되면 확인하고 싶은 변수들이나 에러를 브라우저 콘솔을 통해 확인하는 경우가 있습니다. 하지만 이런 방식은 보안에도 좋지 않을 뿐더러 디버깅에 충분한 정보를 얻기 어려운 경우가 많습니다. 그래서 오늘은 PHP 를 이용해 직접 에러 로그를 찍는 방법을 간단하게 알아보겠습니다. PHP에서 로그를 남기는 가장 일반적인 방법은 내장된 `error_log()` 함수를 사용하는 것입니다. 또한, 사용자 정의 로그 파일을 만들어 특정 정보를 기록할 수도 있습니다. 1. `error_log()` 함수 사용하기 PHP의 `error_log()` 함수는 오류 메시지를 서버의 오류 로그, 파일, 또는 메일로 보낼 수 있습니다. 예제 코드 - `error_log()` 함수는 첫 번째 인자로 전달된 메시지를.. 2024. 1. 8.
[PHP] 데이터베이스 트랜잭션 처리하는 방법 안녕하세요 오늘은 PHP에서 데이터베이스 트랜잭션을 처리하는 방법을 알아보겠습니다. 저희가 코딩을 하며 프로그램을 짜다보면 다양한 예외상황을 맞이하게 되는 데 그럴 때마다 저희는 예외처리를 통해 데이터들을 롤백해주거나 재시도 하는 작업을 하죠? 그런 게 데이터베이스 트랜잭션을 처리하는 과정입니다. 하지만 그 과정을 좀 더 쉽게 만들어주는 메소드가 있습니다! 그것은 바로 mysqli_rollback() 메소드로 해당 스크립트에서 이전에 했던 작업들을 전부 롤백시키는 기능을 합니다. 예를 들어 돈을 송금하는 스크립트인데 데이터베이스에서는 돈을 출금했다고 잔액을 깎는 쿼리가 실행되었는데 그 후 전산상에 문제가 생겨 실제 송금에는 실패했을 경우 잔액이 사라지는 문제가 생깁니다. 이 때 당연히 저희는 그 쿼리를 .. 2024. 1. 5.
[PHP] 정규 표현식 메소드 사용법 오늘은 이전에 공부했던 정규 표현식을 PHP에서 제공하는 메소드를 통해 활용해 보겠습니다. https://stickode.tistory.com/1029 먼저 정규식과 같이 사용할 수 있는 메소드들입니다. // $subject 문자열 안에서 정규 표현식 방식을 사용한 $pattern과 일치하는 것을 검색합니다. // 검색된 결과 값은 결과 값을 저장할 변수인 $matches를 매개변수로 입력했다면 $matches에 저장합니다.(최초 한번만 적용) // 패턴과 일치하는 문자열이 발견된다면 1을 반환하고 발견하지 않는다면 0을 반환합니다. preg_match($pattern, $subject [,$matches]); // preg_match 와 비슷하지만 패턴이 매칭된 개수를 반환하고 // 매개변수에 $mat.. 2024. 1. 1.