본문 바로가기

PHP∵SCRIPT185

PHP 한글 문자열 자르기 PHP에서 문자열을 자르기 위해서는 주로 substr 함수를 이용합니다. substr 함수는 문자열을 잘라서 그 잘린 문자열을 되돌려 주는 기능을 가지고 있는데, 자르는 기준이 바이트 단위입니다. 바이트 단위이다 보니까 한글과 같은 2바이트 문자가 포함된 경우 문자열이 온전히 끝나기 전에 잘려지는 경우 뒷 부분이 깨져서 보이게 됩니다. 아래는 substr 함수로 한글문자열을 잘라내는 간단한 예제이고 그 아래는 실행결과 입니다. < ?php $title = "겨울비 내려와 머리를 적시네"; $test = substr($title,0); for($i=1; $i < strlen($title); $i++ ){ $test = substr($title,0,$i); echo $i.":".$test."\n "; } ?.. 2014. 4. 2.
PHP explode 함수를 이용한 문자열 분리 [PHP explode 함수를 이용한 문자열 분리] PHP 에서 제공하는 explode 함수는 문자열을 특정 문자를 기준으로 배열로 분할하는 함수로 여기서는 explode 함수 외에 JSP의 StringTokenizer 클래스를 이용한 문자열 분리, ASP의 Split 함수를 이용한 문자열 분리의 예까지 살펴보겠습니다. ASP에서 사용되고 있는 Split 함수는 PHP와 JSP(JAVA)에서도 패턴을 이용한 문자열 분리 용도로 제공되고 있는 함수(메소드)이기도 합니다. < ?php // PHP의 explode 함수를 이용한 문자열 분리 $strPhone = "YYYY-XXXX-ZZZZ"; $arrPhone = explode( "-", $strPhone ); for($i=0;$i< sizeof($arrPh.. 2014. 4. 2.
게시판검색이나 쇼핑몰에 유용한 자바스크립트 마이크로소프트의 다운로드 센터에 가면 검색방법에 따라 Select박스가 나타나기도 하고, Text박스가 나타나기도 하더군요.신기해서 그냥 지나칠수가 없었어요. ^^; VB스크립트로 만들어 놓은걸 자바스크립트로 바꿔봤습니다. 호호의 테스트 < !-- function change(str) { if(str=="p"){ CellProduct.style.display="" CellCategory.style.display="none" CellKeyword.style.display="none" }else if(str=="c"){ CellCategory.style.display="" CellProduct.style.di.. 2014. 4. 2.
php 문자열 자르기, 비교, 찾기 함수, str_replace, substr ,strpos, explode 등등 정리 php 문자열 함수 아른하면서도 필요할때는 항상 까먹고 뒤적이게 되는 함수들입니다. 개인적으로 정리해 놓으면 편할거같아 정리해봤습니다. 1. 먼저 문자열을 정리하는 함수입니다. $result = trim($string) - 문자열 앞,뒤 에있는 공백문자를 지웁니다. $result = ltrim($string) - 문자열 앞에 들어가는 공백문자를 지웁니다. $result = chop($string) - 문자열 뒤에 들어가는 공백문자를 지웁니다. 공백문자 - 줄바꿈 개행문자, 탭문자, 스페이스 등의 안보이는 문자 $result = nl2br($string) - 문자열에 포함된 줄바꿈(\r,\n) 문자를 태그로 변환합니다. (php 버전이 4.0.6 보다 낮을경우 높을경우 ) 2. 대소문자 변경 $result.. 2014. 4. 2.
php 정규식 종류별 문자 추출 홍길1234동abc입!!_#니다 라는 문구가 있다고 했을때 해당 문구에서 홍길동입니다 1234 abc !!_# 를 각각 추출해내는 함수이다. euckr을 기준으로 작성된 함수이며 euckr에서는 한글 패턴의 추출이 어려운 관계로 UTF-8로 전환하여 변환하는 형태이다. 핵심은 1 한글,2 영문 ,4 숫자 ,8 특수기호로 명시하고 처리하는 식이다. ========= 내용 ============== $msg = "홍길1234동abc입!!_#니다"; function getMsgArr($msg) { $convMsg = mb_convert_encoding($msg, "UTF-8", "EUC-KR"); $resultArr = array(); // 1: 한글 $pattern = '/[\x{1100}-\x{11FF}\.. 2014. 4. 2.
영문자로만 되어 있는지 // 아이디체크 function userid($str) { $pattern = "/^[\200-\377a-zA-Z0-9]{1}[\200-\377a-zA-Z0-9_-]{2,11}\$/"; return preg_match($pattern,$str); } // 이메일 체크 function email($email) { $pattern = "/^[_a-zA-Z0-9-\\.]+@[\\.a-zA-Z0-9-]+\\.[a-zA-Z]+\$/"; return preg_match($pattern,$email); } // 닉네임체크 function nickname($nick) { $pattern = "/^[\200-\377a-zA-Z0-9_-]{2,12}\$/"; return preg_match($pattern,$nick); .. 2014. 4. 2.
[PHP 5]http_build_query - url 쿼리문자열 생성함수 http_build_query (PHP 5) http_build_query -- URL 인코드한 쿼리 문자열을 생성합니다. 설명 string http_build_query ( array formdata [, string numeric_prefix]) 주어진 연관(혹은 인덱스) 배열에서 URL 인코드한 쿼리 문자열을 생성합니다. formdata는 배열이나 속성을 가지는 객체일 수 있습니다. formdata는 단순한 1차원 구조일수도, 혹은 (다른 배열을 포함한)배열의 배열일 수 있습니다. 기본 배열에 숫자 인덱스를 사용하고 numeric_prefix가 주어지면, 기본 배열 안의 숫자 인덱스 앞에 덧붙여집니다. 이는 PHP나 다른 CGI 어플리케이션에 적합한 변수명을 가지도록 합니다. 예 1. http_bu.. 2014. 4. 1.
PHP 코딩 스타일 1. 문자 쿼테이션 - 잘못된 코딩 $ret = $arr[var1]; - 올바른 코딩 $ret = $arr['var1']; 배열의 키 문자는 반드시 싱글 쿼테이션으로 처리해 주어야 한다. 쿼테이션이 들어가 있지 않은 변수인 경우 Notice 에러가 발생한다. 또한 싱글 쿼테이션과 더블 쿼테이션의 차이점을 명확히 알고 사용하는 것도 중요하다. 일반 문자열의 경우에는 싱글 쿼테이션을 사용하는 것이 바람직하다. 2. 변수 초기화 - 잘못된 코딩 $str .= "abc"; - 올바른 코딩 $str = ""; $str .= "abc"; 변수를 초기화 하지 않은 상태에서 변수를 마구 사용하는 경우가 허다하다. 이는 올바른 코딩 스타일이 아니다. 변수를 초기화하는 습관을 들이도록 노력하자. 3. 변수 타입의 변경 -.. 2014. 4. 1.
썸네일개요 및 함수정리 GD함수정리 getimagesize •$src 로부터 간단한 이미지정보를 읽어온다. •$size = getimagesize($src) ◦$size[0] : 이미지 가로사이즈 ◦$size[1] : 이미지 세로사이즈 ◦$size[2] : 이미지 종류 ◦1 gif 2 jpg 3 png .... ◦$size[3] : height="xx" width="xx" imagecreatefromgif imagecreatefromjpeg imagecreatefrompng •$src 로 부터 새로운 이미지를 만든다. •$source = imagecreatefromgif($src)imagecreatetruecolor•imagecreate 보다 퀄리티가 좋다 •$thumb_width, $thumb_height 사이즈의 캔버스를 .. 2014. 4. 1.
파일 다운로드 함수(멀티 이어받기/속도제한) function fDown($file,$name,$downview,$speed,$limit)// 경로, 원파일명, 다운/보임, 다운속도, 속도제한여부 { if(!file_exists($file)) die('File not exist!'); $size = filesize($file); $name = rawurldecode($name); if (ereg('Opera(/| )([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'])) $UserBrowser = "Opera"; elseif (ereg('MSIE ([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'])) $UserBrowser = "IE"; else $UserBrowser = ''; .. 2014. 3. 31.
php로 작성한 간단 RSS2.0 리더 소스는 PHP5로 작성했고, 내장된 SAX 파서를 이용했습니다. SAX파서는 이벤트 기반 파서라서 구현도 간단하고, 속도도 빠릅니다. RSS는 현재 가장 널리 쓰이는 RSS 2.0을 대상으로 했습니다. 이글루스와 테터도 RSS 2.0을 지원하고 있습니다. 완성된 소스 자체는 간단한데, 제가 PHP를 처음 다뤄봐서 시행착오를 많이 거쳤습니다. 사실 지금도 PHP의 문법과 라이브러리를 완전히 숙지한 상태가 아니라서, 소스 자체도 그리 깔끔하다고는 말 못하겠습니다. 여기 공개된 소스는 제가 작업한 것을 적당히 간추린 것입니다. rss_fetch.php < ?php include_once 'lib.php'; //가져올 RSS 주소를 지정하면됩니다. $urls = array('http://sizuha.egloos.. 2014. 3. 31.
PHP로 작동하는 RSS 읽는 함수 함수의 사용법은 다음과 같습니다. RSS_reader("7","http://blog.jusun.org/tt/rss","UTF-8"); RSS_reader("가져올갯수","RSS주소","인코딩"); 인코딩은 UTF-8 또는 생략 가능입니다. 생략하면 EUC-KR로.. RSS가 잘 안읽어지면 UTF-8 , EUC-KR 왔다갔따 바꿔보세요.. ^^ 2014. 3. 30.
태어난 요일 계산하기 (특정일의 요일 계산) 당신이 태어난 달은? (1-12): 당신이 태어난 날짜는? (1-31): 태어나신 해는? (eg. 1960): 당신의 생일은 이며 그날은 요일 이었습니다. 2014. 3. 28.
zend encode 를 사용하지 않고 PHP 소스 안보이게 하는 방법 ? PHP는 인터프리터 언어 입니다. 컴파일하지 않기 때문에 소스가보일 수 가 있습니다. 물론 어렵겟죠...일반적으로 보안이 되어 있기 때문에 보이지는 않습니다. 그렇다면 ,PHP 소스를 안보이게 하거나 보안을 하게 하는 방법은 ? 컴파일 하지 않고 , PHP 소스 보안을 유지 하는 방법은 ? 들여 쓰기 를 사용하지 않고, 변수명도 어렵게 하는 것 입니다. 남들이 소스를 보기에 짜증나게 하는 것이죠....ㅋㅋㅋ 머..이딴 소스를 만들었나 ? 싶을 정도로 짜증나게 만들면 보지 않을 검당...ㅋㅋㅋ PHPBuilder.com 읽다가 약간 번역 한 것임당...ㅌㅌㅌ http://www.phpbuilder.com/forum/read.php3?num=2&id=139250&thread=139219 또는 http://p.. 2014. 3. 28.
원격지 파일의 존재 여부를 체크 사용자 함수 /*** @description  : 원격 파일 체크* @param        :  url (http://domain.com/file.gif)*/function remote_file_exist($url){        $ch = curl_init();        curl_setopt($ch, CURLOPT_URL,$url);        // don't download content        curl_setopt($ch, CURLOPT_NOBODY, 1);        curl_setopt($ch, CURLOPT_FAILONERROR, 1);        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        if(curl_exec($ch)!==FALSE)  .. 2014. 3. 26.
반응형

Copyright ⓒ SmartWeb All rights reserved.