Loading...
홈 › 블로그

IT 개발 블로그 — REDINFO

PHP mysql_fetch_array() 함수 폐기 - mysqli_fetch_assoc()과 PDO fetch()로 완벽 마이그레이션

PHP 코드를 유지보수하던 중 경고 메시지를 본 적이 있나. 'Call to undefined function mysql_fetch_array()'라는 메시지가 나타나면서 코드가 작동하지 않는 상황을 말이다. 사실 이건 단순한 버그가 아니라 PHP 5.5.0부터 mysql 확장이 공식 폐기되고, PHP 7.0.0부터는 완전히 제거된 결과다. 다만 많은 개발···

1 0
직장인이 매달 내는 '휴대폰 약정할인', 계약 갱신 전에 반드시 확인해야 할 것

휴대폰을 거의 다 쓸 때쯤 통신사에서 문자가 날아온다. '새 폰으로 갈아타세요. 할인받으세요'라는 내용이다. 그대로 갱신하면 편하겠지만, 그 '할인'이 정말 싼 건지 제대로 확인하지 않은 채 계약하는 사람이 대부분이다. 특히 직장인들은 바쁜 와중에 통신사 추천만 따라 할인폰을 받다가 몇십만 원을 낭비하기도 한다. 이번엔 휴대폰 약정할인의 숨은 구조와 계약 ···

1 0
CSS position 속성 5가지 완벽 정복 - static, relative, absolute, fixed, sticky 레이아웃 오류 한 번에 해결

웹 개발을 하다 보면 요소의 위치를 조정해야 할 일이 수없이 많다. 그런데 CSS position 속성을 정확히 이해하지 못한 채 top, left, right, bottom 값만 무작정 조정하다가 레이아웃이 엉망이 되는 경험을 누구나 한 번쯤 해봤을 것이다. 실무에서는 position의 종류에 따라 요소가 배치되는 기준점(containing block)이···

1 0
직장인이 매달 내는 '스포츠센터·필라테스 회원비', 의료비 환급받는 법

헬스장이나 필라테스, 요가 같은 운동시설 회원비를 매달 자동이체로 내면서도 세금 환급받을 수 있다는 걸 아는 사람은 많지 않다. 건강검진 비용이나 의약품 구매처럼 운동도 일종의 건강유지 활동인데, 정부는 이를 소득공제로 인정해주고 있다. 다만 조건이 있어서 모든 사람이 다 받을 수 있는 건 아니고, 신청 방식도 복잡해서 대부분 그냥 지나친다. 이번에는 스포···

1 0
PHP array_values()로 배열 인덱스 리셋하기 - 삭제 후 키 정렬 문제 완벽 해결

배열에서 요소를 삭제한 후 반복문을 돌리면 뭔가 이상하다고 느껴봤을까? 특히 숫자 인덱스를 예상하고 코드를 짰는데 갑자기 중간에 구멍이 뚫려있거나, JSON으로 변환했을 때 배열이 객체처럼 표현되는 문제. 대부분의 개발자들은 이게 PHP의 버그라고 생각하거나, 단순히 array_splice()를 쓰면 된다고 알고 있다. 하지만 array_values()는 ···

1 0
Twilio Video API로 PHP에서 실시간 화상회의 구현하기 - 토큰 생성부터 룸 관리까지 완벽 가이드

화상회의 기능을 직접 구현해본 개발자라면 얼마나 복잡한지 알 것이다. WebRTC 시그널링, 미디어 스트림 관리, 참여자 제어까지 손으로 하나하나 만들려면 몇 달이 걸린다. 다만 대부분의 백엔드 개발자는 Twilio Video 같은 전문 서비스가 있다는 걸 모르고 처음부터 바닥부터 만들려다가 프로젝트를 포기한다. 이번에는 Twilio Video API를 P···

1 0
직장인이 매달 내는 '공중전화·택배료' 비용, 업무상 통신비·운송비로 세금 환급받는 법

월급통장에서 자동으로 빠져나가는 돈들 중에서 정말 많은 직장인이 놓치는 게 있다. 바로 '업무 관련 통신비'와 '운송료'다. 출퇴근 길에 급하게 공중전화를 쓰거나, 업무상 택배를 보내거나, 지인을 위해 선물을 배송했을 때 그 비용들이 쌓여 있다는 걸 알 수 있다. 다만 이런 소액의 영수증들은 대수롭지 않게 여겨서 환급받을 생각을 하지 못한다. 그런데 연말정···

2 0
PHP array_column()으로 다차원 배열에서 특정 열 추출하기 - 반복문 없이 데이터 변환 완벽 가이드

다차원 배열에서 특정 열만 추출해야 할 때 대부분의 개발자는 foreach 루프를 돌거나 array_map을 쓴다. 다만 코드가 길어지고 가독성이 떨어지는 경우가 많다. 이번에는 array_column() 함수로 이 문제를 어떻게 깔끔하게 해결하는지, 실제 사용 사례와 함께 완벽하게 정리해서 소개하겠다. array_column() 함수가 뭔가 array_c···

2 0
LINE Messaging API PHP 연동 - 채팅봇 구현부터 메시지 수신 Webhook까지 완벽 가이드

LINE 메신저를 통해 고객과 직접 소통하고 싶다면 LINE Messaging API는 피할 수 없는 선택지다. 다만 대부분의 개발자들은 공식 문서를 읽어도 Webhook 구조, 시그니처 검증, 메시지 전송까지 온전히 구현하지 못하고 중간에 포기한다. 이번에는 LINE 채팅봇을 PHP에서 처음부터 끝까지 구현하는 방법을 정리해서 소개하겠다. 계정 생성부터 ···

2 0
직장인이 매달 내는 '휴가비·휴직비', 회사에서 몰래 깎고 있진 않나

연차를 쓰고 돌아온 월급통장을 보면 생각보다 적어 놀란 적이 있을까? 휴가를 낸 날짜만큼 월급이 깎이거나, 휴직 기간 동안 생활이 힘들어진 직장인들이 많다. 다만 이런 상황에서 회사가 법적으로 지급해야 하는 수당이 있다는 걸 아는 사람은 적다. 이번에는 휴가·휴직 중 놓치기 쉬운 임금 손실 및 지원제도, 그리고 회사가 제대로 안 주는 것을 챙기는 방법을 정···

2 0
PHP Fatal error: Call to undefined function - 함수 미등록 오류 완벽 해결

PHP 개발하다 보면 갑자기 화면이 하얀색으로 변하면서 로그에 'Call to undefined function' 에러가 떨어진다. 함수를 분명히 정의했는데 왜 없다고 하는 걸까. 이건 단순한 오타가 아니라 함수의 스코프, 네임스페이스, 파일 로드 순서 같은 다양한 원인이 숨어있다. 대부분의 개발자는 에러 메시지만 보고 당황하지만, 원인을 정확히 파악하고 ···

4 0
직장인이 매달 내는 '치과 임플란트·교정비', 건강보험 적용 범위 모르면 수백만 원 손해본다

치과를 방문할 때마다 예상치 못한 고액 청구에 놀란 경험이 있을 것이다. 특히 임플란트나 교정처럼 큰 시술을 앞두면 '건강보험이 적용되나' '정말 이 가격이 맞나' 하는 의구심이 든다. 다만 많은 직장인이 건강보험 적용 범위를 제대로 몰라서 비급여 항목까지 고스란히 내고 있다. 이번에는 치과 치료 중 어디까지 건강보험이 커버되는지, 비급여 비용은 어떻게 줄···

2 0
PHP array_search() vs in_array() vs array_key_exists() - 배열 검색 완벽 비교

배열에서 값이나 키를 찾을 때 어떤 함수를 쓸지 몰라서 헷갈린 경험이 있을까? 대부분의 PHP 개발자들은 습관적으로 in_array()를 사용하거나, 상황을 제대로 파악하지 못한 채 검색 결과에서 본 함수를 그냥 가져다 쓴다. 다만 각 함수의 차이를 정확히 모르면 성능 저하는 물론이고, 버그까지 야기할 수 있다. 이번에는 array_search(), in_···

3 0
robots.txt 무시되는 이유 5가지 - 구글 크롤러가 당신의 지시를 듣지 않는 이유

robots.txt 파일을 제대로 설정했는데도 구글이 차단된 페이지를 자꾸 크롤링한다거나, 검색 결과에 떠야 할 페이지가 안 나타나는 경험을 해본 적 있을까. 대부분의 웹 개발자들은 robots.txt를 단순한 텍스트 파일 정도로 생각해서 규칙을 써놓고 끝낸다. 다만 검색 엔진이 실제로 그 지시를 따르지 않는 경우가 상당히 많다는 걸 모르는 경우가 많다. ···

2 0
PHP unset()으로 변수/배열 요소 제거하기 - 메모리 해제와 오버헤드 완벽 가이드

개발하다 보면 더 이상 필요 없는 변수나 배열 요소를 삭제해야 할 상황이 자주 생긴다. 대부분의 개발자는 단순히 `unset()`을 호출하면 된다고 생각하지만, 실제로는 메모리 해제 시점, 배열 구조 변화, 그리고 반복문 내에서의 예상치 못한 동작까지 신경 써야 할 게 많다. 이번에는 `unset()`의 정확한 동작 원리부터 실전에서 자주 하는 실수까지 완···

3 0
직장인이 매달 내는 '돌봄비·보육료' 세액공제, 연말정산에서 한 푼도 놓치지 않는 법

아이를 키우는 직장인이라면 어린이집 보육료나 유치원 교육비, 학원비 같은 돌봄 관련 비용이 월급만큼 나가간다고 느낄 것이다. 다만 많은 사람들이 이 비용들이 연말정산에서 세금을 깎아주는 항목이라는 걸 제대로 인식하지 못한 채 지나친다. 심지어 맞벌이 가구에서는 누가 공제를 받아야 하는지, 얼마까지 받을 수 있는지 헷갈려서 절반만 챙기는 경우도 많다. 이번에···

4 0
JavaScript Promise.all() vs Promise.allSettled() vs Promise.race() - 비동기 병렬 처리 완벽 비교

여러 개의 비동기 작업을 동시에 처리해야 할 때, Promise 조합 메서드를 쓰지 않고 반복문으로 하나씩 기다리는 개발자들이 많다. 다만 대부분은 Promise.all()만 알고 있거나, 하나의 Promise가 실패하면 전체가 실패하는 문제를 겪고도 그 원인을 정확히 모른 채 코드를 작성한다. 이번에는 세 가지 메서드의 동작 방식, 언제 써야 하는지, 그···

6 0
PHP array_walk()로 배열 요소를 제자리 수정하기 - 반복문 없이 콜백 함수로 일괄 처리

배열의 모든 요소를 순회하며 값을 변경해야 할 때 대부분의 개발자는 foreach 루프를 쓴다. 하지만 요소를 제자리에서 수정하려면 참조(&)를 사용해야 하는데, 이 부분을 제대로 이해하지 못하면 의도치 않은 결과가 나온다. 이번에는 array_walk() 함수로 어떻게 간단하게 배열을 일괄 수정할 수 있는지, 그리고 언제 쓰면 좋은지 완벽하게 정리하겠다.···

4 0
PHP Fatal error: Out of memory - 메모리 누수 원인 분석과 ini_set으로 완벽 해결

서버에서 갑자기 PHP 스크립트가 죽어버렸고, 로그에 'Fatal error: Allowed memory size of X bytes exhausted'라는 메시지가 남아있다면 메모리 고갈 문제를 겪고 있는 것이다. 다만 대부분의 개발자들은 memory_limit을 무작정 늘리기만 하고, 정작 왜 메모리가 낭비되는지, 어디서부터 막아야 하는지 모른 채 응급···

7 0
Naver Clova OCR API로 PHP에서 이미지 텍스트 자동 인식하기 - 이미지 업로드부터 한글 텍스트 추출까지 완벽 가이드

영수증이나 신분증 같은 이미지 파일에서 텍스트를 손수 입력하는 건 정말 귀찮다. 많은 개발자들이 OCR(광학 문자 인식) 기능이 필요하다는 걸 알지만, 대부분 복잡한 라이브러리 설정이나 비용 때문에 망설인다. 다만 국내 개발자라면 네이버 클로바 OCR API를 몰랐을 가능성이 크다. 이번에는 네이버 클로바 OCR의 정확한 사용법, 한글 인식 강점, PHP에···

8 0
REDINFO Since 2014
webmaster@redinfo.co.kr
Copyright © Redinfo All Rights Reserved