모두와 나누는 웹개발 노트

share and care with love.

PHP & Laravel 12

반응형 웹사이트에서 긴 문장의 단어 잘리는 문제 해결 방법

반응형 웹사이트를 제작할 때, 긴 문장을 출력해야 할 경우, 화면 끝에서 단어가 중간에 잘려버리는 문제가 발생한다. 유저의 화면 크기를 예상할 수 없기 때문에 일일이 엔터를 쳐주는것도 불가능한 상황. 이것을 간단히 해결하는 방법을 공유하고자 한다. function lmh_text_block($text) { $result = "".str_replace(" "," ",preg_replace("!\s+!", " ", $text)).""; $result = str_replace(" "," ",$result); return $result; } PHP 함수를 위와 같이 추가하고, .lmh-text-block { display: inline-block; white-space: nowrap; } 이렇게 CSS 클래스를..

PHP & Laravel 2017.06.01

[PHP] json_encode() 한글 깨지는 현상 해결 방법

배열을 json_encode() 해서 json으로 바꿀때 한글 값이 유니코드로 깨져 들어가는 현상을 해결하는 방법.PHP 버전별로 다르게 구현한다. 1. PHP 5.4 이상 $array = array("foo","bar"); $result = json_encode($array,JSON_UNESCAPED_UNICODE); 2. PHP 5.3 이하 function my_json_encode($arr) { //convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding array_walk_recursive($arr..

PHP & Laravel 2016.11.14

[PHP] 인코딩 판단하여 UTF-8로 변환

문자열의 인코딩을 판단하여 UTF-8이 아닐 경우 변환한다. function changeCharset(&$item) { if(is_string($item)==true) { $encoding = array('UTF-8'); if(detectEncoding($item, $encoding)!='UTF-8') $item = iconv('EUC-KR', 'UTF-8', $item); } } function detectEncoding($str, $encodingSet) { foreach ($encodingSet as $v) { $tmp = iconv($v, $v, $str); if(md5($tmp) == md5($str)) return $v; } return false; } 위와 같이 함수 두개가 함께 쓰이며, 실..

PHP & Laravel 2016.11.08

[PHP] 유투브 주소에서 아이디만 뽑아오기

기유투브 주소를 보면 v 값에 비디오 고유 아이디가 들어간다. 예를들면 아래에 붉게 표시된 부분이다. http://www.youtube.com/watch?v=7KdMiRUbHi0&feature=channel PHP를 이용해 간단히 이 아이디 값만 뽑아오려면 아래와 같이 하면 된다. $string = "http://www.youtube.com/watch?v=7KdMiRUbHi0&feature=channel"; $url = parse_url($string); parse_str($url['query']); echo $v;

PHP & Laravel 2011.12.18

[PHP] PHP로 이미지 주소 숨기기

트래픽 부하를 막기 위해 이미지 주소를 숨겨야 할 경우, 아래와 같이 할 수 있다. $location = '이미지 주소'; $extTemp = explode('.',basename($location)); $ext = $extTemp[1]; if($ext == 'jpg') { $ext = 'jpeg'; } header('Content-Type: image/'.$ext.''); readfile($location); 1) 위의 코드를 image.php로 저장한다. 2) '이미지주소' 부분에 원하는 이미지 경로를 입력한다. 3) 형태로 지정할 수 있다. 만약 DB에 주소가 저장되어 있을 경우, image.php의 내용을 살짝 수정하고, image.php?no=뭐뭐 의 형태로 지정하면 된다. 이 부분에 대해 질문..

PHP & Laravel 2011.08.23

[PHP] (TwitPic.com, Snoopy class 응용) 트위터 사진 갤러리 만들기

트윗픽닷컴을 이용해 트위터에 사진을 올리는 경우 아래와 같은 방법을 이용하면 사진만 깔끔하게 뽑아내서 갤러리로 꾸밀 수 있다. 원본 소스 출처는 http://www.ixis.co.uk/blog/twitpic-gallery . 하지만 작년에 쓰인 이 글의 소스는 두가지 문제점을 갖는다. a. 대부분의 호스팅 업체는 file_get_contents()를 지원하지 않는다. b. preg_math()에 사용된 정규식이 변경되었다. 따라서 Snoopy class를 이용해서 재구성 해 보았다. 1) Snoopy Class를 다운받아 자신의 계정에 올린다. http://sourceforge.net/projects/snoopy/files/Snoopy/Snoopy-1.2.4/Snoopy-1.2.4.zip/download..

PHP & Laravel 2011.07.26

[jQuery] Internet Explorer에서 input[type=checkbox]에 스타일(CSS) 적용하기

무슨 이유에서인지 아래와 같은 CSS가 Internet Explorer에선 적용되지 않는다. input[type=checkbox] { margin: 10px; border: 1px solid red; } 물론 각각의 checkbox마다 클래스를 주면 적용할 수 있지만 용량 낭비고 시간 낭비다. (이거 뭐 Internet Explorer 때문에 몇줄의 코드를 추가해야 하는건지 -_-) 어쨌든 이와 같은 상황을 해결하기 위해 jQuery를 이용하면 된다. 바로 위에 아래와 같은 코드를 추가한다. 페이지를 모두 로드하고 jQuery가 발동되며 해당 페이지의 input[type=checkbox]를 찾아 설정된 스타일을 입힌다.

PHP & Laravel 2011.07.07

[PHP] 모바일 기기로 접속시 자동으로 리다이렉트 하기

스마트폰이 대중적으로 보급됨에 따라 웹사이트도 작은 화면에 최적으로 보일 수 있도록 모바일전용 페이지가 필요하게 되었다. CSS3 Media Queries를 이용하면 동적인 레이아웃을 구현할 수 있지만 여기서는 PHP로 모바일기기를 인식하고 리다이렉트 시키는 방법을 소개한다. 1) 아래의 파일을 내려받는다. 첨부된 파일은 2010년 4월 25일 버전이다. 최신 버전을 확인하려면 http://detectmobilebrowsers.mobi/ 를 방문하도록 한다. 2) 내려받은 파일을 자신의 계정에 업로드하고 아래의 코드를 입력한다. include('mobile_device_detect.php'); mobile_device_detect(true,true,true,true,true,true,true,'http:..

PHP & Laravel 2011.06.10
LIST