평소 때와 다름 없는 업무 시간, API 작업을 하는 도중 프론트에서 긴급한 이슈사항이 넘어왔다. { "title": "1111111111", "content": "222222222222222222222" } 등록 API에서 제목과 내용을 프론트에서 유닛 테스트를 진행하던 도중 숫자로만 구성된 문자열을 보냈는데 오류가 발생했다는 것이다. 보통 게시글에서 제목이라 하면 `🐱👤 공지사항 테스트` 문자가 들어간 문자열로 들어갈텐데 무슨 큰 일이 있겠어라는 생각으로 DB에서 결과값을 확인해보았는데 경악을 금치 못했다. { "title": 12341265+7ef, "content": 123452+2cf } 상세 API에서 호출된 결과값은 문자열이 아닌 숫자로 반환해 주는게 확인되었다. 그러다 보니 프론트에서는 ..
전체 글
빠빠빠빰~ 빰빰! 레벨업 했습니다.📖 AutoLoad 인스턴스를 생성하면 자동으로 호출되는 함수 회사에서 작업을 하던 도중, 문득 소스 코드를 보니 require_once가 여러개가 되어 있는걸 보았는데 본 프로젝트는 사이즈가 크기에 후에 불편함이 많아질 것 같아 매우 그렇다. 😅 이런 부분을 어떻게 해결할까 고민을 했는데 AutoLoad 라는걸 발견했다. AutoLoad 쓰기는 해야 하는데 어떻게 쓸까? 우리는 AutoLoad를 쓰기 전에 우선 알아야할 부분이 있는데 바로 spl_autoload_register입니다. sql_autoload_register는 자동으로 클래스를 인식해서 OOP를 쉽게 지원을 해주는데 이런 식으로 인스터스가 필요한 부분에 자동적으로 클래스를 인식을 해준다. 그런데 만약 클래스마다 경로가 다르다면? 🤔 Mo..
📖 Match switch ~ case문과 비슷하지만 좀 더 정형화된, 더 엄격한 조건 판단문이다. ※ 다만, Match 함수는 PHP 8.0.0 이상 버전에서만 사용 가능하니 주의해주시기 바랍니다. 오늘은 PHP Match 함수에 대해서 알아볼까 합니다. 기존에 작업을 진행하면서 switch ~ case문을 많이 사용을 했었던 기억들이 있습니다. switch ~ case를 쓴다면 switch에 넣어줄 파라미터, 그 안에 들어가는 case 조건들.... 하지만 이런 switch ~ case도 PHP에서는 느슨한 약타입 언어로 인해 0 == "0.0" Result: (True) 81 == " 81" Result: (True) 0 == "0" Result: (True) 위의 예제의 내용도 True로 결과값을..