'phP 기초 다지기'에 해당되는 글 117건

 

자바스크립트 호스팅이라면 약간 생소하게 들릴 것 같습니다. 이미지호스팅, 웹호스팅은 많이 들어봤어도 자바스크립트 호스팅은 처음(?) 일것 같네요.

 

글자그대로 자바스크립트를 호스팅 받을 수 있는 서비스입니다.

 

티스토리, 구글 블로그와 같은 이용자는 필요에 따라 자바스크립트를 이용해야 하고, 그래서 CDN 을 이용해 서비스 받을 수 있습니다. 하지만 CDN 은 모든 자바스크립트를 제공하지 않습니다. 아니 CDN으로 제공하지 않는 자바스크립트가 더 많은 것 같네요.

 

꼭 자바스크립트를 연결해야 하는데, 웹호스팅 사용자가 아니라서 이용할 수 없다면 자바스크립트 호스팅을 이용해보는 것을 추천 드립니다.

 

http://yourjavascript.com/

 

Free Javascript Hosting

Introduction Welcome to yourjavascript.com, a free service to host your javascript. Upload your javascript file and we will host it for you.

 

자바스크립트 호스팅은 정상적인 이메일 주소를 입력하고 JS 파일을 업로드하면 입력한 이메일로 자바스크립트 주소를 얻을 수 있습니다.

 

자바스크립트 주소는 yourjavascript.com/고유 ID/javascript.js 형식입니다.

블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

크롬 브라우저의 확장 프로그램 중 "반응형 웹 디자인 테스터"를 설치하면 다양한 크기의 기기를 바로바로 테스터해 볼 수 있습니다.


1. 오른쪽 상단의 메뉴를 누른 후 [도구 더 보기 > 확장 프로그램]을 선택합니다.


2. 다시 왼쪽 상단 확장 프로그램을 선택하면 아래 그림 처럼 하단에 웹 스토어로 이동할 수 있는 링크를 볼 수 있습니다. 웹 스토어 링크를 선택합니다.



3. 웹 스토어에서 "responsive web" 으로 검색한 후 확장 프로그램 중 Responsive Web Design Tester 를 설치합니다. 



4. 확장 프로그램이 정상 설치되면 주소 표시줄 오른쪽에 아래 표시된 그림이 나타납니다. 이 아이콘을 선택하면 현재 보고 있는 사이트를 여러가지 기기의 형태로 표시해 볼 수 있습니다.



반응형 웹 사이트를 제작하고 있다면 이 기능을 이용해 화면이 어떻게 표시되는지 테스트해 볼 수 있습니다.


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

쇼핑몰이나 웹사이트 운영시 회원가입, 상품구매 서비스 이용약관은 이용에 필요한 부분입니다.


약관은 어디서 준비해야할까요? 


여기서 서비스 이용약관, 개인정보 처리방침, 개인정보 처리위탁 및 개인정보 제3자 제공약관을 참고하거나 아래에서 소개하는 방법을 준비해 보았습니다.



"서비스 이용약관" 준비 방법

공정거래위원회 (http://www.ftc.go.kr) 에 접속한 뒤에 [정보공개 > 표준계약서 > 표준약관 양식] 메뉴에서 원하는 약관을 다운로드 합니다.


예를 들어 쇼핑몰을 운영중이라면 "전자상거래 표준약관"을 다운로드 하세요.



"개인정보 처리방침" 준비 방법

개인정보보호 종합포털 (http://www.privacy.go.kr) 에 접속한 뒤에 [사업자 > 개인정보 도우미 개인정보처리방침 만들기] 메뉴를 이용합니다.



"개인정보 처리 위탁 및 개인정보 제3자 제공 약관" 준비

개인정보보호 종합포털 (http://www.privacy.go.kr) 에 접속한 뒤에 [자료 마당 > 지침자료] 메뉴에서 "개인정보 처리방침 작성 예시" 문서를 이용합니다.



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

for 문을 이용해 로또 번호 추출기를 만들어 보겠습니다. for 문을 이용해서 로또 프로그램을 구현해보면 반복문의 이해에 도움이 됩니다.


 <?php

 $arr = array();

 for($i=0; $i<6; $i++){

$arr[$i] = rand(1, 45);

for($j=0; $j<$i; $j++){

if($arr[$i] == $arr[$j]){

$i--;

break;

}

}

 }


 print_r($arr);

 ?>


다음은 추출한 로또 번호를 for문을 이용해 오름차순으로 정렬해 보겠습니다.


 <?

 $arr = array();


 for($i=0; $i<6; $i++){

$arr[$i] = rand(1, 45);

for($j=0; $j<$i; $j++){

if($arr[$i] == $arr[$j]){

$i--;

break;

}

}

  }


 $tmp = 0;

 for($i=0; $i<count($arr); $i++){

for($j=0; $j<$i; $j++){

if($arr[$i] < $arr[$j]){

$tmp = $arr[$i];

$arr[$i] = $arr[$j];

$arr[$j] = $tmp;

}

}

 }


 print_r($arr); 

 ?>


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

2차원 배열을 아래 그림처럼 90도씩 회전시켜 그 결과를 출력하는 방법을 설명합니다. 

 1    2    3    4        13   9    5  1        16  15  14  13      4   8  12  16
 5    6    7    8  =>   14   10  6   2  =>   12  11  10  9  =>  3   7  11  15
 9    10  11  12       15   11  7   3         8   7    6   5       2   6  10  14
 13  14  15  16        16  12  8   4         4    3    2  1        1   5   9   13


ex.01)

 <?php

       $arr = array(

array(1, 2, 3, 4),

array(5, 6, 7, 8),

array(9, 10, 11, 12),

array(13, 14, 15, 16)

);


       for($i = 0; $i < count($arr); $i++)

{

for($j = 0; $j < count($arr); $j++)

{

echo $arr[$i][$j] . "\t";

}

echo "<br />\n";

}

echo "<br />\n";

 /*

 결과

 1    2    3    4

 5    6    7    8

 9    10  11  12

 13  14  15  16

 */


for($i = 0; $i < count($arr); $i++)

{

for($j = count($arr); $j > -1; $j--)

{

echo $arr[$j][$i] . "\t";

}

echo "<br />\n";

}

echo "<br />\n";

/*

 결과

 13    9     5   1

 14   10    6   2

 15   11    7   3

 16   12    8   4

 */


for($i = count($arr); $i > -1; $i--)

{

for($j = count($arr); $j > -1; $j--)

{

echo $arr[$i][$j] . "\t";

}

echo "<br />\n";

}

echo "<br />\n";

/*

 결과

 16   15   14   13

 12   11   10    9

  8    7     6     5

  4    3     2     1

 */


for($i = count($arr); $i > -1; $i--)

{

for($j = 0; $j < count($arr); $j++)

{

echo $arr[$j][$i] . "\t";

}

echo "<br />\n";


/*

 결과

 4   8   12   16

 3   7   11   15

 2   6   10   14

 1   5    9    13

 */

 ?>


 

블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

php에는 최소값, 최대값을 구하는 함수가 있지만 여기서는 for 문을 이용해 최대값, 최소값을 구하는 방법을 설명합니다.



ex.01)

 <?php
 $arr = array(2, 3, 5, 50, 15, 21);
 $min = $max = $arr[0];

 for($i = 0; $i < count($arr); $i++)
 {
   if($max < $arr[$i])
   {
      $max = $arr[$i];
   }
   if($min > $arr[$i])
   {
      $min = $arr[$i];
   }
 }

 echo "최소값: " . $min;

 echo "<br />\n";

 echo "최대값: " . $max;


 ?>


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

php에서는 자체적으로 숫자를 정렬하는 함수를 제공합니다. 여기서는 함수를 이용하지 않고, for 문을 이용해 구현해 보겠습니다.


[2,3,5,50,15,21] 인 배열을 정렬해 보겠습니다.


ex.01)

 <?php

 $arr = array(2,3,5, 50, 15,21);

 $tmp = 0;

for($i=0; $i<count($arr); $i++)

{

for($j=0; $j<count($arr); $j++)

{

if($arr[$i] > $arr[$j])

{

$tmp = $arr[$i];

$arr[$i] = $arr[$j];

$arr[$j] = $tmp;

}

}

}

print_r($arr);

 

/*

 출력

Array

(

[0] => 50
[1] => 21
[2] => 15

[3] => 5

[4] => 3

[5] => 2

 );
 ?>




블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

반복문 for문을 이용해 피라미드식으로 별을 출력하는 방법을 설명합니다.

        *
       ***
      *****
     *******
    *********
   ***********
  *************
 ***************



ex.01)

 <?php

 $num = 9;

 for($i = 0; $i<$num; $i++)

 {

for($J = $num - $i; $J > 0; $J--)

{

echo "&nbsp;";

}

for($q = 0; $q < 2*$i-1; $q++)

{

echo "*";

}

echo "<br />\n";

 }

 ?>


ex.02)

 <?php

 $num = 9;

 for($i = 0; $i<$num; $i++)

 {

for($J = $num - $i; $J > 0; $J--)

{

echo "&nbsp;";

}

for($q = 0; $q < $i; $q++)

{

echo "*";

}

for($w = 1; $w < $i; $w++)

{

echo "*";

}

echo "<br />\n";

 }

 ?>



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

비트 연산자는 말그대로 0과 1로 이루어진 2진수를 가지고 연산을 합니다.



예제 

 설명

 결과 

 $a & $b

 AND

 두 비트가 모두 1인 값을 반환

 $a | $b

 OR

 두 비트 중 하나라도 1이면 1를 반환

 $a ^ $b

 XOR

 두 비트가 다를 때 1를 반환

 ~$a

 NOT

 비트 NOT 연산자, 비트 뒤집기

 $a << $b

 Shilft Left

 $a 를 왼쪽으로 $b 만큼 이동

 $a >> $b

 Shift Right

 $a 를 오른쪽으로 $b 만큼 이동


AND 연산자

주어진 비트 중 두 비트가 모두 1이라면 참입니다.


 32  16  8  4  2  1  -> 10 진수 표현

---------------------

  0    0  1  0  1  0  -> 10 진수로 표현하면 10 입니다.

  0    1  1  0  0  0  -> 10 진수로 표현하면 24 입니다.

---------------------

  0    0  1  0  0  0   -> 10 진수로 표현하면 8입니다.

---------------------


 여기서 두 비트가 일치하는 비트는 8이므로 8을 반환합니다. 

ex.1)

 <?php
   echo 10 & 24; // 결과: 8 
 ?>


OR 연산자

주어진 비트 중 하나라도 1이면 참으로 합니다.


 32  16  8  4  2  1  -> 10 진수 표현

---------------------

  0    0  1  0  1  0  -> 10 진수로 표현하면 10 입니다.

  0    1  1  0  0  0  -> 10 진수로 표현하면 24 입니다.

---------------------

  0    1  1  0  1  0   -> 10 진수로 표현하면 26입니다. ex.1) 16 + 8 + 2 = 26

---------------------


 여기서 두 비트 중 하나라도 일치하는 비트는 16, 8, 2 이므로 26 입니다. 


ex.1)

 <?php
   echo 10 | 24; // 결과: 26 
 ?>


XOR 연산자

주어진 비트 중 두 비트가 다른 값을 반환합니다.

 32  16  8  4  2  1  -> 10 진수 표현

---------------------

  0    0  1  0  1  0  -> 10 진수로 표현하면 10 입니다.

  0    1  1  0  0  0  -> 10 진수로 표현하면 24 입니다.

---------------------

  0    1  0  0  1  0   -> 10 진수로 표현하면 18입니다. ex.1)  16 + 2 = 18

---------------------


 여기서 두 비트가 일치하지 않는 비트는 16과 2이므로 18을 반환합니다. 


ex.1)

 <?php
 echo 10 ^ 24; // 결과: 18 
 ?>


NOT 연산자

비트 NOT 연산자는 1를 0으로 0을 1로 바꾸는 것으로 "비트 뒤집기" 또는 "비트 반전"이라고 부릅니다.

 32  16  8  4  2  1   0 -1 -2 -4 -8 -16   -> 10 진수 표현

----------------------------------------

  0    0  1  0  1  0   0  0  0  0   0    0   -> 10 진수로 표현하면 10 입니다.

----------------------------------------

  0    0  0  1  0  1  -1 -1 -1-1 -1    0   -> 10 진수로 표현하면 -11 입니다.


  ex.1)  10 - 20 - 1 = -11


ex.1)

 <?php
 echo ~10; // 결과: -11 

 echo ~100; // 결과: -101

 echo ~50; // 결과: -51

 echo ~25; // 결과: -26
 ?>


Shift Left 연산자

주어진 값 만큼 왼쪽으로 비트를 이동하는 연산자입니다. 각 단계는 2로 곱하기를 의미합니다.


 32  16  8  4  2  1  -> 10 진수 표현

---------------------

  0    0  1  0  1  0  -> 10 진수로 표현하면 10 입니다.

-<--<--<--<--<--- 

  0    1  0  1  0  0   -> 비트를 왼쪽으로 1만큼 이동시키면 20 이 됩니다.


 여기서 8과 2를 왼쪽으로 1칸 이동시키면 16과 4가 되므로 결과는 20 이 됩니다.

 ex.) 10*2 = 20이 되며 2칸 이동시키면 10*2*2 = 40 이 됩니다.


ex.1)

 <?php
 echo 10 << 1; // 결과: 20 
 ?>


Shift Right 연산자

주어진 값 만큼 오른쪽으로 비트를 이동하는 연산자입니다. 각 단계는 2로 나누기를 의미합니다.


 32  16  8  4  2  1  -> 10 진수 표현

---------------------

  0    0  1  0  1  0  -> 10 진수로 표현하면 10 입니다.

->-->-->-->-->--- 

  0    0  0  1  0  1   -> 비트를 오른쪽으로 1만큼 이동시키면 5가 됩니다.


 여기서 8과 2를 오른쪽으로 1칸 이동시키면 4와 1이 되므로 결과는 5 이 됩니다.

 ex.) 10/2 = 5가 되며 2칸 이동시키면 10/2 = 5/2 = 2 가 됩니다.


ex.1)

 <?php
 echo 10 >> 1; // 결과: 5
 ?>



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

시작태그와 종료 태그 사이의 값을 찾는 정규표현식입니다.

 <aA>.*?</aA>

ex.1)

 나의 블로그 이름은 <a>habony php</a> And <a>blog</a> 입니다.


참고로 .* 를 사용하면 </a> And <a> 사이의 문자열도 일치하게 되므로 .*? 를 사용해야 합니다.


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

RGB 값을 찾는 정규표현식은 의외로 간단합니다. #로 시작해서 0-9a-f인 값을 찾으면 됩니다.

ex.1)

 #[a-fA-F0-9]{6}

ex.2)
 #[[:xdigit:]]{6}


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

이전에 등록한 정규표현식 보다 훨씬 간결한 url 정규표현식입니다.

ex.1)

 https?://[\w./]+

2011/11/29 - url 정규표현식


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

신용카드 번호 정규표현식을 이용하면 잘못된 숫자를 걸러낼 수 있습니다.


마스터 카드 길이는 16자리이고, 첫 숫자는 항상 5가 옵니다.

ex.1)

 5[1-5]\d{14}


비자 카드 길이는 13~16자리로 되어 있고, 첫 숫자는 4로 시작합니다.

ex.2)

 4\d{12}(\d{3})?

아메리칸익스프레스 카드 길이는 15자리이고, 34나 37로 시작합니다.

ex.3)

 3[47]\d{13}

디스커버 카드는 16자리이고, 6011로 시작합니다.

ex.4)

 6011\d{12}

다이너스클럽 카드는 14자리이고, 300~305, 또는 36이나 38로 시작합니다.

ex.5)

 (30[0-5]|3[68]\d)\d{11}


이 다섯 카드 번호를 하나의 정규표현식으로 구현하면 아래의 형식이 됩니다.

ex.6)

 ((5[1-5]\d{14})|(4\d{12}(\d{3})?)|(3[47]\d{13})|(6011\d{12})|((30[0-5]|3[68]\d)\d{11}))


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

이메일 정규표현식에는 여러 종류의 방식이 있습니다. 이중에서 가장 단순한 방법이 아닐까 생각합니다. 

요즘은 이상한(?) 종류의 도메인이 너무 많아서 추출하는 방법이 여간 까다로운게 아닐듯 합니다.

예를 들어 .shop .email .edu 와 같은 도메인을 말합니다.

ex.1)

 \w+[\w.]*@[\w.]+\.\w+

w 는 a-zA-Z0-9_ 를 포함한 문자를 찾는 것이므로 아래 방법을 이용할 수 있습니다.

ex.2)

 (\w+\.)*\w+@(\w+\.)+[a-zA-Z]+


2011/05/02 - 이메일 정규표현식

2011/05/21 - 이메일 정규표현식 #2


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

PC 에 설치해서 사용할 수 있는 에디트 플러스가 있다면 온라인에서 코드를 편집할 수 있는 코드 패드가 있습니다.


코드패드는 아래 그림 처럼 소스 코드를 편집해서 결과를 확인할 수 있다는 장점이 있습니다. PHP 뿐 아니라 C, C++, D, Haskell, Lua, OCaml, Perl, Plain Text, Python, Ruby, Scheme, Tcl 를 지원 할 뿐 아니라 쇼트 URL 도 제공합니다.




참고: http://codepad.org/



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

Charset 목록 파일입니다.


 ansi_x3.110-1983

 ansi_x3.4-1968

 armscii-8

 asmo_449

 big5

 big5-hkscs

 brf

 bs_4730

 bs_viewdata

 cp10007

 cp1125

 cp1250

 cp1253

 cp1254

 cp1255

 cp1256

 cp1257

 cp1258

 ...



다운로드 :  charset.txt


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

검색엔진 봇 목록 파일입니다.


ex.1)

 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)




 008

 ABACHOBot

 ABCdatos BotLink

 Accoona-AI-Agent

 Acme.Spider

 AddSugarSpiderBot

 Ahoy! The Homepage Finder

 Alkaline

 ananzi

 Anthill

 AnyApexBot

 Googlebot

 ...



다운로드 :  robots_list.txt


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

파일 업로드에서 가장 중요하게 생각되는 부분이 확장자 추출이 아닐까 싶습니다.


다음 함수로 문제시 되는 파일명(또는 확장자)를 가진 파일을 필터링하여 보다 안전하게 관리할 수 있겠습니다.


다음 문자열을 포함한 파일이라면 false 를 반환하고, ".exe. .." 과 같이 부적절한 확장자도 실행가능한 파일로 인식하므로 정확하게 exe 파일 확장자를 추출하여 줍니다.


 \/:*?\"'<>|\n\t\r\x0\x0B



 <?php
 function 
cExtraction($extensions
 { 
    
$return false
    if(
strlen($extensions) === strcspn($extensions"\\/:*?\"'<>|\n\t\r\x0\x0B")) 
    { 
        if(
false !== strpbrk($extensions'.')) 
        { 
           
$return strtolower(trim(

                         substr($extensionsstrcspn($extensions'.')),

            '. ')); 


            if(
false !== strpbrk($return'.')) 
            { 
                return 
trim(strrchr($return'.'), '. '); 

            }  
        } 
    } 
    return 
$return
 } 
 ?> 


다음 예제에서 \n 을 포함한 파일명이므로 false 입니다.


예 1)

 <?php   
 $file 
" f.ile. \n  zip.zzzz.aswqww.dwq....wqe.w..ddd.cd.d....";   
 if(
false !== ($ext cExtraction($file)) 
 { 
    echo 
"'" $ext "'";
 } 
 ?> 


다음 예제에서는 확장자 d 를 반환합니다.


예 2)

 <?php   
 $file 
" f.ile.  zip.zzzz.aswqww.dwq....wqe.w..ddd.cd. . d ...";   
 if(
false !== ($ext cType_Extraction($file)) 
 { 
    echo 
"'" $ext "'"// 출력: d
 }
 ?> 


예 3)

 <?php   
 $file 
" f.ile";   
 if(
false !== ($ext cType_Extraction($file)) 
 { 
    echo 
"'" $ext "'"// 출력: ile
 }
 ?> 


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

2013~2014년 도메인 등록 랭킹 자료입니다.

 

 

 

다운로드 : 도메인 랭킹.xlsx

 

출처: http://www.keepalert.com/

 

블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

국제 전화 국가 번호에 대해 잘 정리된 곳이 있어 소개하려 합니다.

국제 전화 번호와 국가 번호가 잘 정리되어 있어 자료를 쉽게 찾을 수 있을 듯 합니다.


사이트 바로 가기: http://www.gugga-beonho.info/


관련글 : 2014/07/16 - ISO 3166-1 국가 코드




블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

파일 업로드 크기가 제한되는 경우 .htaccess 파일을 만들어 아래 코드를 적절히 수정해서 사용하면 됩니다.


 php_value upload_max_filesize 16M
 php_value post_max_size 20M

#Ex. 1)

 <form action="" method="post" enctype="multipart/form-data"> 
<div> 
<label for="upload">Select file</label> 
<input name="upload" type="file" /> 
<input type="submit" name="Submit" value="Upload" /> 
</div> 
</form> 

<?php 
// FTP 아이디, 패스워드, 도메인 정보 
$ftp_url 'userid:password@example.com'

if (isset(
$_POST['Submit'])) { 
 if (!empty(
$_FILES['upload']['name'])) { 
     
$ch curl_init(); 
     
$localfile $_FILES['upload']['tmp_name']; 
     
$fp fopen($localfile'r'); 
     
curl_setopt($chCURLOPT_URL,

        'ftp://'.$ftp_url.'/'.$_FILES['upload']['name']); 
     
curl_setopt($chCURLOPT_UPLOAD1); 
     
curl_setopt($chCURLOPT_INFILE$fp); 
     
curl_setopt($chCURLOPT_INFILESIZE,filesize($localfile)); 
     
curl_exec ($ch); 
     
$error_no curl_errno($ch); 
     
curl_close ($ch); 
        if (
$error_no == 0) { 
            
$error 'File uploaded succesfully.'
        } else { 
            
$error 'File upload error.'
        } 
 } else { 
        
$error 'Please select a file.'
 } 

?>


출처: http://www.web-development-blog.com/archives/tutorial-ftp-upload-via-curl/



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

문자 인코딩 입니다.


 ISO 8859 인코딩
 ISO-8859-1 서유럽
 ISO-8859-2 서유럽, 중앙유럽
 ISO-8859-3 서유럽, 남유럽 (터키, 몰타, 에스페란토)
 ISO-8859-4 서유럽, 발트해 (리투아니아, 에스토니아, 라프)
 ISO-8859-5 키릴 문자
 ISO-8859-6 아랍
 ISO-8859-7 그리스
 ISO-8859-8 히브리
 ISO-8859-9 서유럽 (개정 터키 포함)
 ISO-8859-10 서유럽 (개정 노르딕, 아이슬란드 포함)
 ISO-8859-11 타이
 ISO-8859-13 발트, 폴란드
 ISO-8859-14 켈트 (아일랜드 게일, 스코틀랜드, 웨일스)
 ISO-8859-15 유로 기호, ISO-8859-1에 대한 다른 항목 추가
 ISO-8859-16 중앙 유럽, 남유럽 (폴란드, 체코, 슬로바키아, 세르비아, 크로아티아, 헝가리, 알바니아, 로마, 독일, 이탈리아)

 MS 윈도우 인코딩
 Windows-1250 중앙 유럽 (폴란드, 체코, 슬로바키아, 헝가리, 슬로베니아, 세르비아, 크로아티아, 로마, 알바니아)
 Windows-1251 키릴 문자
 Windows-1252 서유럽
 Windows-1253 그리스
 Windows-1254 터키
 Windows-1255 히브리
 Windows-1256 아랍
 Windows-1257 발트
 Windows-1258 베트남
 TIS-620 타이

 기타 인코딩
 일본 EUC-JP, ISO-2022-JP, ISO-2022-JP-2, Shift_JIS
 중국 GB2312(간체), GB18030(간체), HZ(간체), BIG5(번체), ISO-2022-CN
 한국 EUC-KR, ISO-2022-KR
 대만 EUC-TW
 유니코드 UTF-8


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

MIME Type 목록입니다.


다운로드:  MIME Types.docx

               MIME_Types.txt



관련 링크: 2013/04/03 - MIME Type

블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

파일을 다른 서버로 전송하기 위해 꼭 FTP 나 fopen 으로만 가능한 것은 아닙니다. cUrl 함수로도 FTP의 기능을 충분히 흉내낼 수 있는데, 파일을 일반 변수로 전송할 수 있습니다.

 

로컬에서 파일을 받아 http://example.com/test.php  로 파일을 전송하는데, $_FILES 변수가 아닌 $_POST 의 imagefile 변수로 받는다는 점에 주목해야 합니다.


ex #1)

<? 
/* 
test.php 의 내용 
print_r($_POST); 

// 내용을 임시 파일로 만들어서 uploaded 폴더에 저장합니다. 
$str = base64_decode($_POST['imagefile']); 
$tmpfname = tempnam("/tmp", "test_");  
$handle = fopen($tmpfname, "wb");  
fwrite($handle, $str);  
fclose($handle);  

move_uploaded_file($tmpfname, "uploaded/test.gif"); 
*/ 

if($_FILES

    
$filename $_FILES['userfile']['tmp_name']; 
    
$handle fopen($filename"r"); 
    
$data base64_encode(fread($handlefilesize($filename))); 

    
// $data is file data 
    
$post   = array('imagefile' => $data); 
    
$timeout 30
    
$curl    curl_init(); 

    
curl_setopt($curlCURLOPT_URL'http://example.com/test.php'); 
    
curl_setopt($curlCURLOPT_TIMEOUT$timeout); 
    
curl_setopt($curlCURLOPT_POST1); 
    
curl_setopt($curlCURLOPT_RETURNTRANSFER1); 
    
curl_setopt($curlCURLOPT_POSTFIELDS$post); 

    
$str curl_exec($curl); 

    
curl_close ($curl); 
    
print_r($str); 
    
/* 
    결과: 
    Array ( 
        [imagefile] => /9j/4AAQSkZJRgABAgEAYABgAAD/7gAOQWRv.... 
    )  
    */ 


?> 

<form enctype="multipart/form-data" action="" method="POST">  
    이 파일을 전송합니다: <input name="userfile" type="file" />  
    <input type="submit" value="파일 전송" />  
</form>



블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

robots.txt 파일 설정에 대한 정보는 아래 사이트에서 쉽게 찾을 수 있습니다.


참고 사이트: http://www.robotstxt.org/ 


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

아직까지 국내에는 생소하다 생각할 수 있는 cPanel 은 해외에서는 대중화된 인기있는 툴입니다. cPanel 은 초보자가 접근할 수 없는 도메인, 메일, FTP, DNS 존 등 GUI 로 쉽게 관리할 수 있다는 장점을 가지고 있습니다.


cPanel 의 장점이라고 볼 수 있는 또하나의 기능을 소개한다면 바로 자동 설치 스크립트 기능을 꼽을 수 있을 것입니다. 자동 설치 스크립트는 무료로 배포되는 워드프레스, 줌라, phpbb 외 다수 스크립트를 온라인 상에서 클릭 몇 번으로 쉽게 설치해주는 기능입니다.


cPanel 을 사용하지 않더라도 국내 사용자라도 FTP 정보만 알고 있으면 누구든지 쉽게 설치할 수 있습니다.


https://www.softaculous.com/softaculous/scripts_in_free


이 곳에서는 유로 사용자와 무료 사용자로 구분되며 무료 사용자는 55개 정도의 스크립트를 설치할 수 있습니다.

유료 사용자는 355개 의 스크립트 설치 기능을 제공하고, 서버 사양에 따라 년 $12 ~ $150 정도의 비용이 듭니다.


무료 자동설치 스크립트를 이용하기 위해 먼저 회원가입을 해야 합니다. 회원가입의 간단한 절차를 마쳤다면 원하는 스크립트를 선택합니다.



설치할 스크립트를 선택하였다면 위 그림에서 보이는 "Install Zikula now"를 클릭합니다. 그러면 아래 그림 처럼 나타나고, FTP 정보를 입력하면 설치가 완료됩니다.



참고로 이곳 사이트는 자동설치 스크립트만 제공하는게 아닙니다. APM 자동설치 프로그램을 제공하는데, 국내에는 AutoSet 이나 APMSetup 이 있다면 외국에는 ampps 이 있습니다.


http://www.ampps.com/


물론 무료로 배포됩니다.


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

ISO 639  자리 언어 코드

Sorted by Language

Abkhazian

AB

 

Afar

AA

 

Afrikaans

AF

 

Albanian

SQ

 

Amharic

AM

 

Arabic

AR

 

Armenian

HY

 

Assamese

AS

 

Aymara

AY

 

Azerbaijani

AZ

 

Bashkir

BA

 

Basque

EU

 

Bengali, Bangla

BN

 

Bhutani

DZ

 

Bihari

BH

 

Bislama

BI

 

Breton

BR

 

Bulgarian

BG

 

Burmese

MY

 

Byelorussian

BE

 

Cambodian

KM

 

Catalan

CA

 

Chinese

ZH

 

Corsican

CO

 

Croatian

HR

 

Czech

CS

 

Danish

DA

 

Dutch

NL

 

English, American

EN

 

Esperanto

EO

 

Estonian

ET

 

Faeroese

FO

 

Fiji

FJ

 

Finnish

FI

 

French

FR

 

Frisian

FY

 

Gaelic (Scots Gaelic)

GD

 

Galician

GL

 

Georgian

KA

 

German

DE

 

Greek

EL

 

Greenlandic

KL

 

Guarani

GN

 

Gujarati

GU

 

Hausa

HA

 

Hebrew

IW

 

Hindi

HI

 

Hungarian

HU

 

Icelandic

IS

 

Indonesian

IN

 

Interlingua

IA

 

Interlingue

IE

 

Inupiak

IK

 

Irish

GA

 

Italian

IT

 

Japanese

JA

 

Javanese

JW

 

Kannada

KN

 

Kashmiri

KS

 

Kazakh

KK

 

Kinyarwanda

RW

 

Kirghiz

KY

 

Kirundi

RN

 

Korean

KO

 

Kurdish

KU

 

Laothian

LO

 

Latin

LA

 

Latvian, Lettish

LV

 

Lingala

LN

 

Lithuanian

LT

 

Macedonian

MK

 

Malagasy

MG

 

Malay

MS

 

Malayalam

ML

 

Maltese

MT

 

Maori

MI

 

Marathi

MR

 

Moldavian

MO

 

Mongolian

MN

 

Nauru

NA

 

Nepali

NE

 

Norwegian

NO

 

Occitan

OC

 

Oriya

OR

 

Oromo, Afan

OM

 

Pashto, Pushto

PS

 

Persian

FA

 

Polish

PL

 

Portuguese

PT

 

Punjabi

PA

 

Quechua

QU

 

Rhaeto-Romance

RM

 

Romanian

RO

 

Russian

RU

 

Samoan

SM

 

Sangro

SG

 

Sanskrit

SA

 

Serbian

SR

 

Serbo-Croatian

SH

 

Sesotho

ST

 

Setswana

TN

 

Shona

SN

 

Sindhi

SD

 

Singhalese

SI

 

Siswati

SS

 

Slovak

SK

 

Slovenian

SL

 

Somali

SO

 

Spanish

ES

 

Sudanese

SU

 

Swahili

SW

 

Swedish

SV

 

Tagalog

TL

 

Tajik

TG

 

Tamil

TA

 

Tatar

TT

 

Tegulu

TE

 

Thai

TH

 

Tibetan

BO

 

Tigrinya

TI

 

Tonga

TO

 

Tsonga

TS

 

Turkish

TR

 

Turkmen

TK

 

Twi

TW

 

Ukrainian

UK

 

Urdu

UR

 

Uzbek

UZ

 

Vietnamese

VI

 

Volapuk

VO

 

Welsh

CY

 

Wolof

WO

 

Xhosa

XH

 

Yiddish

JI

 

Yoruba

YO

 

Zulu

ZU

 


출처: http://www.mcanerin.com/en/articles/meta-language.asp


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

A-2 : ISO 3166-1 의 두 자리 코드 

A-3 : ISO 3166-1 의 세 자리 코드 

NUM : ISO 3166-1 의 숫자 코드 

Dial : ITU-T 권고 E.164 (국제 전화 코드)

국가 이름

A-2

A-3

Num

Dial

Afghanistan

AF

AFG

4

93

Åland

AX

ALA

248

358

Albania

AL

ALB

8

355

Algeria

DZ

DZA

12

213

American Samoa

AS

ASM

16

1-684

Andorra

AD

AND

20

376

Angola

AO

AGO

24

244

Anguilla

AI

AIA

660

1-264

Antarctica

AQ

ATA

10

672

Antigua and Barbuda

AG

ATG

28

1-268

Argentina

AR

ARG

32

54

Armenia

AM

ARM

51

374

Aruba

AW

ABW

533

297

Australia

AU

AUS

36

61

Austria

AT

AUT

40

43

Azerbaijan

AZ

AZE

31

994

Bahamas

BS

BHS

44

1-242

Bahrain

BH

BHR

48

973

Bangladesh

BD

BGD

50

880

Barbados

BB

BRB

52

1-246

Belarus

BY

BLR

112

375

Belgium

BE

BEL

56

32

Belize

BZ

BLZ

84

501

Benin

BJ

BEN

204

229

Bermuda

BM

BMU

60

1-441

Bhutan

BT

BTN

64

975

Bolivia

BO

BOL

68

591

Bonaire, Sint Eustatius

BQ

BES

535

599

and Saba

Bosnia and Herzegovina

BA

BIH

70

387

Botswana

BW

BWA

72

267

Bouvet Island

BV

BVT

74

47

Brazil

BR

BRA

76

55

British Indian Ocean

IO

IOT

86

246

Territory

Brunei Darussalam

BN

BRN

96

673

Bulgaria

BG

BGR

100

359

Burkina Faso

BF

BFA

854

226

Burundi

BI

BDI

108

257

Cambodia

KH

KHM

116

855

Cameroon

CM

CMR

120

237

Canada

CA

CAN

124

1

Cape Verde

CV

CPV

132

238

Cayman Islands

KY

CYM

136

1-345

Central African Republic

CF

CAF

140

236

Chad

TD

TCD

148

235

Chile

CL

CHL

152

56

China

CN

CHN

156

86

Christmas Island

CX

CXR

162

61

Cocos (Keeling) Islands

CC

CCK

166

61

Colombia

CO

COL

170

57

Comoros

KM

COM

174

269

Congo (Brazzaville)

CG

COG

178

242

Congo (Kinshasa)

CD

COD

180

243

Cook Islands

CK

COK

184

682

Costa Rica

CR

CRI

188

506

Côte d'Ivoire

CI

CIV

384

225

Croatia

HR

HRV

191

385

Cuba

CU

CUB

192

53

Curaçao

CW

CUW

531

599

Cyprus

CY

CYP

196

357

Czech Republic

CZ

CZE

203

420

Denmark

DK

DNK

208

45

Djibouti

DJ

DJI

262

253

Dominica

DM

DMA

212

1-767

Dominican Republic

DO

DOM

214

1-809

1-829

1-849

Ecuador

EC

ECU

218

593

Egypt

EG

EGY

818

20

El Salvador

SV

SLV

222

503

Equatorial Guinea

GQ

GNQ

226

240

Eritrea

ER

ERI

232

291

Estonia

EE

EST

233

372

Ethiopia

ET

ETH

231

251

Falkland Islands

FK

FLK

238

500

Faroe Islands

FO

FRO

234

298

Fiji

FJ

FJI

242

679

Finland

FI

FIN

246

358

France

FR

FRA

250

33

French Guiana

GF

GUF

254

594

French Polynesia

PF

PYF

258

689

French Southern Lands

TF

ATF

260

262

Gabon

GA

GAB

266

241

Gambia

GM

GMB

270

220

Georgia

GE

GEO

268

995

Germany

DE

DEU

276

49

Ghana

GH

GHA

288

233

Gibraltar

GI

GIB

292

350

Greece

GR

GRC

300

30

Greenland

GL

GRL

304

299

Grenada

GD

GRD

308

1-473

Guadeloupe

GP

GLP

312

590

Guam

GU

GUM

316

1-671

Guatemala

GT

GTM

320

502

Guernsey

GG

GGY

831

44

Guinea

GN

GIN

324

224

Guinea-Bissau

GW

GNB

624

245

Guyana

GY

GUY

328

592

Haiti

HT

HTI

332

509

Heard and McDonald Islands

HM

HMD

334

672

Honduras

HN

HND

340

504

Hong Kong

HK

HKG

344

852

Hungary

HU

HUN

348

36

Iceland

IS

ISL

352

354

India

IN

IND

356

91

Indonesia

ID

IDN

360

62

Iran

IR

IRN

364

98

Iraq

IQ

IRQ

368

964

Ireland

IE

IRL

372

353

Isle of Man

IM

IMN

833

44

Israel

IL

ISR

376

972

Italy

IT

ITA

380

39

Jamaica

JM

JAM

388

1-876

Japan

JP

JPN

392

81

Jersey

JE

JEY

832

44

Jordan

JO

JOR

400

962

Kazakhstan

KZ

KAZ

398

7

Kenya

KE

KEN

404

254

Kiribati

KI

KIR

296

686

Korea, North

KP

PRK

408

850

Korea, South

KR

KOR

410

82

Kuwait

KW

KWT

414

965

Kyrgyzstan

KG

KGZ

417

996

Laos

LA

LAO

418

856

Latvia

LV

LVA

428

371

Lebanon

LB

LBN

422

961

Lesotho

LS

LSO

426

266

Liberia

LR

LBR

430

231

Libya

LY

LBY

434

218

Liechtenstein

LI

LIE

438

423

Lithuania

LT

LTU

440

370

Luxembourg

LU

LUX

442

352

Macau

MO

MAC

446

853

Macedonia

MK

MKD

807

389

Madagascar

MG

MDG

450

261

Malawi

MW

MWI

454

265

Malaysia

MY

MYS

458

60

Maldives

MV

MDV

462

960

Mali

ML

MLI

466

223

Malta

MT

MLT

470

356

Marshall Islands

MH

MHL

584

692

Martinique

MQ

MTQ

474

596

Mauritania

MR

MRT

478

222

Mauritius

MU

MUS

480

230

Mayotte

YT

MYT

175

262

Mexico

MX

MEX

484

52

Micronesia

FM

FSM

583

691

Moldova

MD

MDA

498

373

Monaco

MC

MCO

492

377

Mongolia

MN

MNG

496

976

Montenegro

ME

MNE

499

382

Montserrat

MS

MSR

500

1-664

Morocco

MA

MAR

504

212

Mozambique

MZ

MOZ

508

258

Myanmar

MM

MMR

104

95

Namibia

NA

NAM

516

264

Nauru

NR

NRU

520

674

Nepal

NP

NPL

524

977

Netherlands

NL

NLD

528

31

New Caledonia

NC

NCL

540

687

New Zealand

NZ

NZL

554

64

Nicaragua

NI

NIC

558

505

Niger

NE

NER

562

227

Nigeria

NG

NGA

566

234

Niue

NU

NIU

570

683

Norfolk Island

NF

NFK

574

672

Northern Mariana Islands

MP

MNP

580

1-670

Norway

NO

NOR

578

47

Oman

OM

OMN

512

968

Pakistan

PK

PAK

586

92

Palau

PW

PLW

585

680

Palestine

PS

PSE

275

970

Panama

PA

PAN

591

507

Papua New Guinea

PG

PNG

598

675

Paraguay

PY

PRY

600

595

Peru

PE

PER

604

51

Philippines

PH

PHL

608

63

Pitcairn

PN

PCN

612

870

Poland

PL

POL

616

48

Portugal

PT

PRT

620

351

Puerto Rico

PR

PRI

630

1

Qatar

QA

QAT

634

974

Reunion

RE

REU

638

262

Romania

RO

ROU

642

40

Russian Federation

RU

RUS

643

7

Rwanda

RW

RWA

646

250

Saint Barthélemy

BL

BLM

652

590

Saint Helena

SH

SHN

654

290 n

Saint Kitts and Nevis

KN

KNA

659

1-869

Saint Lucia

LC

LCA

662

1-758

Saint Martin (French part)

MF

MAF

663

590

Saint Pierre and Miquelon

PM

SPM

666

508

Saint Vincent and the

VC

VCT

670

1-784

Grenadines

Samoa

WS

WSM

882

685

San Marino

SM

SMR

674

378

Sao Tome and Principe

ST

STP

678

239

Saudi Arabia

SA

SAU

682

966

Senegal

SN

SEN

686

221