Loading...
홈 › 블로그

IT 개발 블로그 — REDINFO

[PHP] 파일내용 가져오기 속도 테스트 (fgets,fread,file,file_get_contents,include)

최근 json 파일을 읽어와 데이터 처리를 하면서 궁금증이 생겼다. 파일읽기 함수는 여러가지가 있는데 이중 속도차이가 많이 날까라는 의문이였다. 나같은 경우 파일 내용을 읽을 시 file_get_contents 와 include 를 많이 사용했는데 검색하다보니 file_get_contents 가 더 빠르다는 글이 있어 몇가지 함수를 더 추가해서 테스트를 해···

4,551 12
[PHP] 삼항연산자와 or 과 and 연산자

삼항연산자의 경우 대학교 시절 C언어 접하면서 처음 용어를 알게 되었다. 당시 기억으로 시험때문에 사용했고 실제 프로그램 작업할때는 거의 사용하지는 않았던것같다. 하지만 삼항 연산자는 간다한 처리에서 많이 사용하는 방식이니 반드시 숙지하는게 좋다. 책으로 본다면 전문용어로 설명이 되어있겠지만 나같은 경우 그런 설명은 별로 좋아하지 않는다. 나는 내가 이해했···

3,171 7
[PHP] if else 문과 else if 문의 차이점 그리고 switch case 문

프로그램 하면서 if 문과 switch 문은 빼놓을 수 없을 만큼 많은 비중을 차지 하고 있다. 하지만 if 문과 else if 문의 확실 한 차이점을 초기 이해못하고 사용한다면 정말 위험한 프로그램을 할 수 있기때문에 처음 프로그램을 접한다면 반드시 숙지하고 가는게 좋다. 기본적으로 if else 문의 기본 사용은 1번 예제와 같다. 1번 예제 <?···

2,930 4
[JAVASCRIPT] jquery 를 이용하여 data 속성을 처리

과거 데이터 처리는 일반적으로 form 을 이용하여 처리하였으나 요즘은 ajax 처리가 많아지면서 사용자로부터 입력이 없는 데이터처리는 form 이 아닌 스크립트로 많이 처리한다. 하지만 스크립트에 PHP로 데이터처리를 하다보면 소스코드가 지저분하게 보여질 수 있고 공통파일 처리도 어려울 수 있기에 각 정보를 특정 태그에 data 속성으로 담아주고 처리하는···

2,129 5
[PHP] HTML 소스코드에서 특정 태그의 속성정보 추출 함수 | get_tag_data_all()

이번에 소개할 서포트 함수는 HTML 소스코드에서 특정 태그의 속성값을 배열로 추출할 수 있는 함수다. 보통 이미지 태그에서 src 속성을 추출 하기위해 많이 사용하는 정규식이 있는데 해당 정규식을 조금 커스텀하여 모든 태그의 특정 속성들을 전부 가져올 수 있도록 개선해보았다. 사용방법 및 예제는 아래를 참고하길 바란다. get_tag_data_all 함수···

2,669 4
[PHP] PHP 에서 메일검사(유효성) 정규식 과 함수

우리는 사용자로 부터 입력받는 이메일 형식이 유효한지 체크해야 할 경우가 있다. 이메일의 경우 보통 아이디@ 도메인 형식으로 구성 되어있으며 이러한 규칙을 활용하여 이메일에 대한 검증을 해야한다. 이메일 유효성 체크에의 경우 아래와 같이 두가지 방법을 소개한다. preg_match 함수를 통한 정규칙 체크 <?php $email="lcy@redinfo···

3,481 7
프로그래밍은 무엇이고 잘하는 방법이 따로 있을까?

프로그래밍이란 프로그램 언어를 습득해서 이를 통해 코딩으로 표현하는것 자체가 프로그래밍이며 누구나 개발을 할 수 있다면 개발자라고 불러진다. 개발을 하다보면 주변에서 친한 사람들이 봤을때는 이자식 알고 하는걸까 할 정도로 모르는사람에게는 외계어로 불리는 프로그램 언어지만 프로그램 언어또한 개발을 편하게 하기 위해 만들어 놓은 언어로 우리가 전 세계에서 가장···

3,116 8
smtpSendMail - PHP SMTP 를 이용한 메일 보내기 라이브러리

smtpSendMail 본 라이브러리는 PHP SMTP 를 이용한 메일 발송 프로그램입니다. ※ smtpSendMail 라이브러리 개발은 22년 8월로 종료되었습니다. multiSendMail 라이브러리를 이용해 주세요. multiSendMail- PHP 를 이용한 심플한 메일 발송 라이브러리 - R BLOG multiSendMail 본 라이브러리는 PHP···

6,006 12
[PHP] 소스코드 압축 및 주석 삭제를 도와주는 서포트 함수 | text_compression() , remark_remove()

이번에 소개할 서포트 함수는 출력된 문서기준으로 HTML, CSS, JS, TEXT 코드들을 압축해 주는 함수다. 참고로 이 함수는 HTML 주석도 숨김처리를 해주나, /**/ 주석같은 경우 텍스트 압축 및 주석 치환 위치에 따라 소스코드가 이상하게 처리되는 경우도 있으니 참고하여 사용하기 바란다. text_compression 함수 - 소스코드 압축 fu···

2,200 5
[PHP] 사용자 정의 함수 1개로 여러개의 메소드를 사용하는 서포트 함수 | method()

글제목 선정이 조금 어려웠는데 말 그대로 사용자 정의 함수 1개를 선언하여 여러개의 함수를 재정의 후 사용할 수 있는 서포트 함수다. 나같은 경우 예전에 클래스로 컨트롤러 작업을 하다가 함수형태로도 사용하면 좋을 것 같아 따로 만들어서 계속 사용중이다. 아래는 method 함수와 예제이니 참고하여 사용하면 된다. method 함수 // method 함수 i···

2,886 6
[PHP] 소켓통신으로 POST 데이터 와 파일전송 서포트 함수 | socket_post_request

PHP에서 다른 서버로 파일을 전송하는 방법에는 크게 CURL 통신과 소켓통신이 있다. 솔직히 회사에서 사용한다면 CURL 통신을 추천하지만 부득이하게 CURL 통신으로 안될경우 소켓통신을 사용하는것을 추천한다. 소켓통신이 사용하는 방법이 까다롭고, 서버에 따라 잘 안되는 경우도 있는것같다. 이번에 만든 함수같은 경우 전에 다른 서버에서 사용했던 함수였는데···

2,971 4
[PHP] 세션 설정 - php.ini 없이 설정하기

세션의 경우 쿠키보다 한단계 높은 보안용도로 생각하는 경우가 많다. 하지만 전혀 보안이 높은건 아니다. 세션도 쿠키가 있어야만 작동되기 때문에 쿠키가 탈취당하는 순간 한방으로 끝날 수 있다. 따라서 세션의 보안성을 높이기 위해선 인증 쿠키를 여러개를 구어서 세션정보와 함께 대조하도록 만드는게 좋다. 즉 쉽게 설명하면 보안 인증 쿠키를 구어서 세션 변수내 ···

3,307 9
[PHP] index.php 죽이기

웹을 개발하다보면 index.php 죽이기라는 말을 많이들 들어봤을 것이다. 처음 index.php 죽이기를 접했을 시 이게 무슨 말이지? 하였지만 막상 사용하고 보니 이해가 되었다. index.php 란 쉽게 말해 말 그대로 index.php 자체를 없애고 내부적으로는 index.php 에서 모든걸 처리한다는 뜻이다. 그런데 말입니다. index.php···

72,644 9
[PHP] 문자열에서 숫자만 남기고 삭제하는 함수

이번 헬퍼 함수는 문자열에서 숫자만 남기고 모두 삭제하는 함수이다. 옵션으로 INT 도 있으며 해당 INT를 추가할 경우 정수만 추출할 수 있다. 추가로 넣은 기능의 경우 마이너스 기능이며, 처음 시작이 하이픈(-) 일경우 뒤에 숫자의 경우 모두 마이너스로 표현이 된다. getNumber() 함수 - 숫자만 남기고 삭제하는 함수 function getNu···

607 5
[PHP] BASE64로 인코딩 된 데이터인지 판별하는 프로그램

데이터 암호화/복호화 시 사용하는 암호화 방식에는 가장 많이 사용하는 base64 암호화 방식이 있다. 주로 데이터 전송시 암호화 후 복호화 하는 형태로 많이들 이용하는데 이번편은 해당 함수가 bas64 암호화로 된 데이터인지 검증할 수 있는 함수이다. base64chk() 함수 /* $base64_str => base64 encode string *···

564 3
[PHP] JSON 데이터가 정상적인지 체크하는 함수 - isjson

이번에 소개할 함수는 JSON 데이터가 정상적인지 체크하는 함수로 , 체크 방식은 JSON 디코드시 발생되는 에러 결과값을 이용하여 체크하도록 되어있다. 함수정의와 사용 방법은 아래와 같다. isjson() 함수 function isjson($string){ json_decode($string); switch (json_last_error()) { case···

3,584 7
[PHP] 접속한 UuserAgent 가 로봇인지 체크하는 함수 - checkRobot

블로그 사이트를 새로 개발하고 오픈한뒤로 꾸준히 봇들의 접속 로그가 확인이 되고 있다. 다만 로그상 보면 잡히지 않는 봇들이 너무 많은것같아 기존 함수를 좀더 보완해서 ua 에 bot 을 포함하여 전부 차단해 버렸다. 뭐 정상적인 봇이라고 하지만 Yeti 나 bingbot 같은경우 디도스 공격처럼 접속하기때문에 반드시 트래픽을 잘 확인해 봐야한다. 접속한 ···

1,167 5
[PHP] AJAX 요청인지 체크하는 방법 - ajaxchk

# AJAX요청 체크하는 함수 예제function ajaxchk (){ if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') { return true; } else { return false;···

643 5
str_contains() 함수[PHP >= 8]

str_contains() 함수의 경우 전체문자열, 찾을문자열을 파라미터로 받아서 있을 경우 TRUE, 없을경우 FALSE 를 RETURN 한다. 다만 이함수는 PHP8 이상 에서만 지원되므로 아래와 같이 서포트가 가능하다. 테스트결과보기 if (!function_exists('str_contains')) { function str_contains($hay···

1,421 4
PHP 에서 GET,POST 변수처리 보안

PHP의 경우 변수가 정말 개방적이다. 때론 개방적이다 못해 해커로 부터 공격당하기 좋은 환경또한 제공해 준다. 과거 프로그램들을 보면 GET, POST 를 변수화 시켜서 사용하거나 php.ini 에서 변수화 설정을 통해 사용하기도 했었다. 이러한 방법은 편리하긴 하나 보안의 취약점이기도 하다. 현재와서는 함수 또는 클래스화 하여 처리하고 있지만 PHP만 ···

1,093 6
REDINFO Since 2014
webmaster@redinfo.co.kr
Copyright © Redinfo All Rights Reserved