PHP와 JavaScript로 구현하는 게시물 등록일 상대 표기
·
Programing/PHP
상대 시간 표기가 필요한 이유웹사이트나 블로그에서 게시물의 등록일을 "2024-06-01 13:45"와 같은 절대 시간으로 표기하는 대신 "1시간 전", "3일 전"처럼 사람이 직관적으로 이해하기 쉬운 "상대 시간"으로 보여주는 방식은 사용자 경험(UX)을 크게 향상시킵니다.이러한 방식은 댓글, 알림, 블로그 포스트, 게시판 등 시간에 민감한 콘텐츠에 특히 유용하며, 사용자가 정보를 더 빠르게 해석할 수 있도록 돕습니다.상대 시간 변환 기준아래는 상대 시간 표기를 위한 변환 기준입니다:60초 이내 → "1분 전"1시간 이내 → "n분 전"하루 이내 → "n시간 전"한 달 이내 → "n일 전"1년 이내 → "n개월 전"1년 이상 → "n년 전"PHP로 구현하기PHP에서는 time() 값으로 저장된 타임스탬..
php 비밀번호 유효성 검사
·
Programing/PHP
연관글2025.04.22 - [Programing/javascript] - javascript 비밀번호 유효성 검사2019.01.05 - [Programing/PHP] - PHP 정규식 비밀번호 유효성 검사 에서 개선되었습니다.보안이 중요한 웹 애플리케이션에서는 사용자의 비밀번호가 일정 수준의 복잡성을 만족해야 합니다. 이 글에서는 PHP로 작성된 passwordCheck 함수를 통해 비밀번호의 길이, 문자 구성, 공백 여부 등을 검사하는 방법을 소개합니다.✨ 함수 설명function passwordCheck($password){ $lengthValid = strlen($password) >= 10 && strlen($password) \/?`~]/', $password); $hasWhites..
PHP 이메일 유효성 검사
·
Programing/PHP
연관글2025.04.22 - [Programing/javascript] - javascript 이메일 유효성 검사2019.01.05 - [Programing/PHP] - PHP 정규식 이메일 유효성 검사 글의 코드가 개선되었습니다.2025.04.21 - [Programing/javascript] - 이메일 입력 필드를 위한 한글 및 공백 제거 jQuery 같이 보면 좋은 글 사용자가 입력하는 이메일 주소가 형식에 맞는지를 검사하는 기능은 대부분의 회원가입, 로그인, 문의폼 등에 필수적으로 포함됩니다. PHP에서도 정규표현식을 통해 이 기능을 간단하게 구현할 수 있습니다. 본 글에서는 PHP로 작성된 isValidEmail 함수의 동작 방식과 정규표현식의 의미를 정리합니다.✨ 함수 설명function is..
🔐 PHP로 문자열 중간을 마스킹하는 함수
·
Programing/PHP
웹 서비스에서는 사용자 정보를 보여줄 때 전체를 노출하는 대신, 일부만 보여주고 나머지는 가려주는 처리가 자주 필요합니다. 특히 이름, 전화번호, 이메일과 같은 개인정보의 경우 보안을 위해 중간 일부를 마스킹 처리하는 방식이 일반적으로 사용됩니다.이 글에서는 PHP로 구현한 strMaskingCenter() 함수를 중심으로, 한글까지 정확하게 처리할 수 있는 문자열 마스킹 로직을 소개합니다.✅ 핵심 기능입력된 문자열의 중간 영역을 마스킹 문자로 대체합니다.마스킹 범위는 문자열 길이에 따라 자동 계산됩니다.한글 문자열도 정확하게 처리할 수 있도록 멀티바이트 대응 함수가 포함되어 있습니다.💻 전체 코드function strMaskingCenter($_str='', $_mask='*'){ $_str =..
PHP SEED ECB 암/복호화 샘플코드
·
Programing/PHP
KISA에서 제공하는 PHP을 다운로드 받아 적용해 봤지만 원하는 값이 나오지 않아 아래 사이트들을 참조하여 SEED ECB 작성했습니다. https://github.com/eGovFrame/egovframework.rte.root/blob/master/Foundation/egovframework.rte.fdl.crypto/src/main/java/egovframework/rte/fdl/cryptography/impl/aria/AnsiX923Padding.java https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=koku_ma&logNo=70071610300 https://github.com/qnibus/seed128 https://..
PHP 윤년(leap year)체크
·
Programing/PHP
PHP윤년 체크는 기본적으론 javascript 윤년체크와 같다 다만, PHP는 date 함수를 통해 좀더 쉽게 제공한다. echo date("L", strtotime("2019-01-01")); // 0 echo date("L", strtotime("2020-01-01")); // 1 echo date("L", strtotime("2021-01-01")); // 0 echo date("L", strtotime("2022-01-01")); // 0 echo date("L", strtotime("2023-01-01")); // 0 echo date("L", strtotime("2024-01-01")); // 1 if (date("L", strtotime("2020-01-01")) == true) { ech..
PHP 배열 첫번째 키값 가지고 오기
·
Programing/PHP
아래 코드와 같이 key & value 형태로 되어 있는 배열에서 첫 번째 키 값을 얻는 방법입니다. $arr = array( 'A'=>array( 2=>'', 4=>'', 3=>'' ), 'B'=>array( 1=>'B', 3=>'B', 2=>'C' ), ); echo key($arr); // print 'A' echo key($arr['A']); // print '2'
PHP 정규식 비밀번호 유효성 검사
·
Programing/PHP
2025.04.22 - [Programing/PHP] - php 비밀번호 유효성 검사 으로 개선되었습니다. function passwordCheck($_str){ $pw = $_str; $num = preg_match('/[0-9]/u', $pw); $eng = preg_match('/[a-z]/u', $pw); $spe = preg_match("/[\!\@\#\$\%\^\&\*]/u",$pw); if(strlen($pw) 30) { return array(false,"비밀번호는 영문, 숫자, 특수문자를 혼합하여 최소 10자리 ~ 최대 30자리 이내로 입력해주세요."); exit; } if(preg_match("/\s/u", $pw) ..
PHP 정규식 이메일 유효성 검사
·
Programing/PHP
2025.04.22 - [Programing/PHP] - PHP 이메일 유효성 검사 로 개선되었습니다. function mailCheck($_str){ if (preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $_str) == false) { return false; // array(false, "올바른 이메일 주소를 입력해주세요."); } else { return true; // return array(true); }}
숫자를 휴대폰번호 형태로 전환 (phone number format
·
Programing/PHP
11자리 숫자를 휴대폰 번호의 형태로 바꾸는(마치 number_format() 함수처럼) 함수. '01012341234' 를 '010-1234-1234'과 같은 형태로 전환. function phone_number_format($number="") { if(preg_match( '/(\d{3})(\d{4})(\d{4})$/', $number, $matches)) { return "{$matches[1]}-{$matches[2]}-{$matches[3]}"; } else { return $number; } }