cURL 연결 함수cURL 연결 함수

Posted at 2018. 8. 30. 10:35 | Posted in PHP
반응형




참조 : 하보니 PHP 158페이지, 598페이지,

참조 : http://xshine.tistory.com/251




반응형
//

[PHP] 문장 / 문자열의 의 대소문자를 변환해주는 함수[PHP] 문장 / 문자열의 의 대소문자를 변환해주는 함수

Posted at 2018. 8. 30. 10:11 | Posted in PHP
반응형




참고 : http://mwultong.blogspot.com/2007/06/php-uppercase-lowercase-string.html




■ 문장 / 문자열의 의 대소문자를 변환해주는 함수




#01. 문장을 전부 소문자로 변환하는 strtolower( ) 함수


<?php
    $letter = "Warcraft III The Frozen Throne";
    echo strtolower($letter);
?>












#02. 문장을 전부 대문자로 변환하는 strtoupper( ) 함수


<?php
    $letter = "Warcraft III The Frozen Throne";
    echo strtoupper($letter);
?>










#03. 문장의 첫 글자 대문자로 변환하는 ucfirst( ) 함수


<?php
    $letter = "let's swing dance";
    echo ucfirst($letter);
?>











#04. 각 단어의 첫 글자만 대문자로 변환하는 ucwords( ) 함수


<?php
    $letter = "let's swing dance";
    echo ucwords($letter);
?>








반응형
//

[PHP] PHPExcel 서식 변경하기[PHP] PHPExcel 서식 변경하기

Posted at 2018. 8. 29. 18:35 | Posted in PHP
반응형




■ PHPExcel 서식 변경하여 숫자값 나타내기





#01. 앞자리가 0으로 끝나는 문자열 출력하기



엑셀 문서 작업중에서는 앞자리가 0으로 끝나야 하는 경우의 수가 발생한다.




위 이미지처럼 셀 서식에서 미리 앞자리에 0이 삽입될 수 있게끔 서식을 지정하면 되는데.


PHPExcel에서도 0이 앞으로 나오게끔 할 수 있고 그것을 지원해 주는 함수가 존재한다.


<?php

      $objPHPExcel -> getActiveSheet() -> getStyle("A1") -> getNumberFormat() -> setFormatCode("00000");

?>


0이 앞자리에 들어갈 탭을 getStyle( )사용하여 지정하고 getNumberFormat( ), setFormatCode( ) 위 두개의 함수를 사용하면 가능한데.


그 예는 아래와 같다.



# 소스코드

<?php
include "./PHPExcel-1.8/Classes/PHPExcel.php";
$objPHPExcel = new PHPExcel();

$arrVelvet = array();


// 앞자리가 0으로 끝나는 숫자값을 number에 담는다.

$arrVelvet[1] = array("number" => "00001", "name" => "아이린", "position" => "센터, 리더, 메인래퍼", "birthday" => "03월 29일");
$arrVelvet[2] = array("number" => "00002", "name" => "슬기", "position" => "리드보컬, 메인댄서", "birthday" => "02월 10일");
$arrVelvet[3] = array("number" => "00003", "name" => "웬디", "position" => "메인보컬", "birthday" => "02월 21일");
$arrVelvet[4] = array("number" => "00004", "name" => "조이", "position" => "리드래퍼, 서브보컬", "birthday" => "09월 03일");
$arrVelvet[5] = array("number" => "00005", "name" => "예리", "position" => "서브래퍼, 서브보컬", "birthday" => "03월 05일");

$objPHPExcel -> setActiveSheetIndex(0)
    -> setCellValue("A1", "NO.")
    -> setCellValue("B1", "이름")
    -> setCellValue("C1", "포지션")
    -> setCellValue("D1", "생일");

$count = 1;
foreach($arrVelvet as $key => $val) {
    $num = 1 + $key;
    $objPHPExcel -> setActiveSheetIndex(0)
    -> setCellValue(sprintf("A%s", $num), $val['number'])
    -> setCellValue(sprintf("B%s", $num), $val['name'])
    -> setCellValueExplicit(sprintf("C%s", $num), $val['position'])
    -> setCellValue(sprintf("D%s", $num), $val['birthday']);
    $count++;
}

$objPHPExcel -> getActiveSheet() -> getColumnDimension("A") -> setWidth(10);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("B") -> setWidth(12);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("C") -> setWidth(30);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("D") -> setWidth(15);

$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A1:D%s", $count)) -> getAlignment() -> setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A1:D%s", $count)) -> getBorders() -> getAllBorders() -> setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel -> getActiveSheet() -> getStyle("A1:D1") -> getFont() -> setBold(true);
$objPHPExcel -> getActiveSheet() -> getStyle("A1:D1") -> getFill() -> setFillType(PHPExcel_Style_Fill::FILL_SOLID) -> getStartColor() -> setRGB("CECBCA");
$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A2:D%s", $count)) -> getFill() -> setFillType(PHPExcel_Style_Fill::FILL_SOLID) -> getStartColor() -> setRGB("F4F4F4");


// getNumberFormat(), setFormatCode() 함수를 사용한다.
// setFormatCode() 함수에 앞자리 0이 출력되게끔 문자열의 자리수 만큼 0을 입력한다.
$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A2:A%s", $count)) -> getNumberFormat() -> setFormatCode("00000");



$objPHPExcel -> getActiveSheet() -> setTitle("레드벨벳");
$objPHPExcel -> setActiveSheetIndex(0);
$filename = iconv("UTF-8", "EUC-KR", "레드벨벳");

header("Content-Type:application/vnd.ms-excel");
header("Content-Disposition: attachment;filename=".$filename.".xls");
header("Cache-Control:max-age=0");

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel5");
$objWriter -> save("php://output");
?>



# 출력결과 - 엑셀 파일 다운로드




# 출력결과 - 엑셀 파일 결과값









#02. 천단위 숫자에 콤마( , ) 기호 삽입하기


이번에는 엑셀에서 천단위가 넘어가는 숫자값에 자동으로 콤마( , )가 삽입되는 서식이다.



이번에는 setFormatCode( ) 안에 #,##0 을 입력하면 된다.


<?php

      $objPHPExcel -> getActiveSheet() -> getStyle("A1") -> getNumberFormat() -> setFormatCode("#,##0");

?>


이 방식을 활용한 예제는 아래와 같다.



# 소스코드

<?php
include "./PHPExcel-1.8/Classes/PHPExcel.php";
$objPHPExcel = new PHPExcel();

$arrChicken = array();
$arrChicken[1] = array("name" => "굽네치킨", "site" => "www.goobne.co.kr", "brand" => "1555064");
$arrChicken[2] = array("name" => "교촌치킨", "site" => "www.kyochon.com", "brand" => "1513807");
$arrChicken[3] = array("name" => "맘스터치", "site" => "www.momstouch.co.kr", "brand" => "1492470");
$arrChicken[4] = array("name" => "BBQ", "site" => "www.bbq.co.kr", "brand" => "1149937");
$arrChicken[5] = array("name" => "BHC", "site" => "www.bhc.co.kr", "brand" => "1028167");
$arrChicken[6] = array("name" => "네네치킨", "site" => "nenechicken.com", "brand" => "717022");
$arrChicken[7] = array("name" => "처갓집양념치킨", "site" => "www.cheogajip.co.kr", "brand" => "344319");
$arrChicken[8] = array("name" => "또래오래", "site" => "www.toreore.com", "brand" => "333237");
$arrChicken[9] = array("name" => "호식이두마리치킨", "site" => "www.9922.co.kr", "brand" => "329789");
$arrChicken[10] = array("name" => "페리카나", "site" => "www.pelicana.co.kr", "brand" => "249857");
$arrChicken[11] = array("name" => "멕시카나", "site" => "www.mexicana.co.kr", "brand" => "235892");
$arrChicken[12] = array("name" => "지코바양념치킨", "site" => "www.gcova.co.kr", "brand" => "214345");
$arrChicken[13] = array("name" => "또봉이통닭", "site" => "ttobongee.com", "brand" => "121882");
$arrChicken[14] = array("name" => "멕시칸치킨", "site" => "www.mexicanchicken.co.kr", "brand" => "88719");
$arrChicken[15] = array("name" => "마파치킨", "site" => "www.mapachicken.co.kr", "brand" => "83152");
$arrChicken[16] = array("name" => "부어치킨", "site" => "www.boor.co.kr", "brand" => "81520");
$arrChicken[17] = array("name" => "훌랄라참숯바베큐", "site" => "www.hoolala.co.kr", "brand" => "22720");

$objPHPExcel -> setActiveSheetIndex(0)
    -> setCellValue("A1", "NO.")
    -> setCellValue("B1", "이름")
    -> setCellValue("C1", "사이트")
    -> setCellValue("D1", "브랜드평가");


$count = 1;
foreach($arrChicken as $key => $val) {
    $num = 1 + $key;
    $objPHPExcel -> setActiveSheetIndex(0)
    -> setCellValue(sprintf("A%s", $num), $key)
    -> setCellValue(sprintf("B%s", $num), $val['name'])
    -> setCellValueExplicit(sprintf("C%s", $num), $val['site'])
    -> setCellValue(sprintf("D%s", $num), $val['brand']);
    $count++;
}

$objPHPExcel -> getActiveSheet() -> getColumnDimension("A") -> setWidth(8);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("B") -> setWidth(20);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("C") -> setWidth(30);
$objPHPExcel -> getActiveSheet() -> getColumnDimension("D") -> setWidth(18);

$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A1:D%s", $count)) -> getAlignment() -> setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A1:D%s", $count)) -> getBorders() -> getAllBorders() -> setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel -> getActiveSheet() -> getStyle("A1:D1") -> getFont() -> setBold(true);
$objPHPExcel -> getActiveSheet() -> getStyle("A1:D1") -> getFill() -> setFillType(PHPExcel_Style_Fill::FILL_SOLID) -> getStartColor() -> setRGB("CECBCA");
$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("A2:D%s", $count)) -> getFill() -> setFillType(PHPExcel_Style_Fill::FILL_SOLID) -> getStartColor() -> setRGB("F4F4F4");


// getNumberFormat(), setFormatCode() 함수를 사용한다.
// setFormatCode() 함수에 천단위를 나타내는 서식인 #,##0 입력한다.

$objPHPExcel -> getActiveSheet() -> getStyle(sprintf("D2:D%s", $count)) -> getNumberFormat() -> setFormatCode("#,##0");


$objPHPExcel -> getActiveSheet() -> setTitle("치킨전문점 브랜드평가 8월");
$objPHPExcel -> setActiveSheetIndex(0);
$filename = iconv("UTF-8", "EUC-KR", "치킨전문점");


header("Content-Type:application/vnd.ms-excel");
header("Content-Disposition: attachment;filename=".$filename.".xls");
header("Cache-Control:max-age=0");


$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel5");
$objWriter -> save("php://output");
?>




# 출력결과 - 엑셀 파일 다운로드





# 출력결과 - 엑셀 파일 결과값

반응형
//

[PHP] Windows 환경에서 Apache 및 PHP 설치하기[PHP] Windows 환경에서 Apache 및 PHP 설치하기

Posted at 2018. 8. 18. 17:30 | Posted in PHP/PHP Setting
반응형




■ 윈도우 환경에서 아파치 및 php 설치 및 세팅하는 방법




01. http://www.apachelounge.com/download/ Apache를 다운받는다.

    설치할 윈도우 환경에 맞게 64bit인지 32bit인지 확인하고 맞는 버전을 다운받도록 한다.




02. 다운받은 httpd-버전.zip 파일을 열고 그중에 Apache24 폴더만 따로 아파치를 설치할 폴더로 복사한다.

 ① httpd-버전.zip을 압축 해제 프로그램을 통해 연다.

 ② 압축 해제 프로그램이 실행되면 압축 파일 목록 중에 Apache24가 있는것을 확인 할 수 있다.

 ③ Apache24 폴더를 압축을 해제할 경로에 생성한다.





03. 다음으로는 PHP를 다운받는다.

    https://windows.php.net/download/ 사이트에 접속하여 PHP를 다운받으면 된다.

    이때 Thed Safe 버전을 받도록 한다.

 ※ Non Thread Safe 버전을 받게되면 진행 과정중 필요한 php7apache2_4.dll 파일이 존재하지 않는다.




04. 다운받은 php-버전정보.zip 파일의 압축을 해제한 이 후 압축 해제한 폴더명을 php로 수정한다.





05. 이제 php 폴더에서 php.ini-development 파일을 찾아본다.

     찾아낸 이후에 이 파일을 복사본을 생성하고 그 복사본의 파일명과 확장자를 php.ini로 변경한다.






06. 텍스트 편집기를 통해 php.ini를 열고 이제 내용을 수정하도록 한다.





07. short_open_tag를 아래와 같이 on으로 변경한다.

short_open_tag가 on이 되면 위 그림과 같이 <?php ?>가 아닌 <? ?>태그만 선언을 해주어도

그 안에서 php기능을 사용할 수 있다.





08. 다음으로 doc_root 파일에 경로를 추가하도록 하자.

    압축을 해제한 Apache24 폴더의 htdocs 폴더까지의 경로를 doc_root 에 경로를 삽입하면 된다.





09. 다음으로 extension_dir 속성에 위에서 압축을 해제하고 파일명을 바꾼 php 폴더의 ext폴더까지의 경로를

    extension_dir 속성에 삽입하면 된다.




10. date.timezone 속성의 주석( ; )을 해제하고 Asia/Seoul 을 입력하여 한국 시간을 사용할 수 있도록 한다.





11. error_reporting 속성을 찾고 에러 등급의 설정을 변경하도록 하자

    아래는 기존 값에서 E_ALL & ~E_NOTICE로 설정을 해 두었다.

    이렇게 설정하면 지정한 변수의 값이 NULL인 경우에 발생하는 Undefined index 에러를 사전에 방지할 수 있다.





12. php.ini 파일의 설정이 끝나면 php가 잘 실행되는지 여부와 함께 php를 환경변수에 등록하도록 하자.

    먼저 제어판에 들어가서 시스템 속성으로 찾고 시스템을 실행 시킨다.





14. 시스템 창이 팝업이 되면 좌측의 고급 시스템 설정을 클릭한다.





15. 시스템 속성 창이 뜨면 아래 순서대로 작업을 진행한다.

 ① 상단 탭 메뉴에서 고급을 클릭한다.

 ② 아래 환경 변수 버튼을 클릭한다.





12. 환경 변수를 아래와 같은 순서대로 변경하도록 하자.

 ① Path 변수를 찾고 선택한다.

 ② 편집버튼을 클릭하여 Path 값을 수정한다.





13. php의 압축을 해제한 곳의 경로를 path 변수에 등록한다.

 ① C:\설치경로\Apache24\php; 경로까지의 값을 등록한다.

 ② 확인 버튼을 클릭하여 변경된 사항을 저장한다.




14. 확인 버튼을 눌러 변경된 사항을 한번 더 저장한다.




15. 마지막으로 돌아온 시스템 속성창에서 확인 버튼을 누르고 닫아준다.





16. 이제 윈도우 + R 키를 입력하여 실행 팝업창을 띄운다.

 ① cmd 라고 입력하여 윈도우 터미널을 실행시킨다.

 ② php -v라고 입력하여 php버전





17. 이제 php -v라고 입력하면 php정보가 터미널 창에 출력되는 것을 확인 할 수 있다.

    이것으로 일단 php 설치는 일단락 되었다.





18. 다음으로 수정할 파일은 Apache24폴더의 conf 폴더 안에 있는 httpd.conf 파일이다.

    아파치 설치에 가장 중요한 부분이니 신경쓰도록 하자.




19. 제일먼저 Define SRVROOT 속성을 찾고 실행할 아파치(Apache24)의 경로를 삽입한다.






20. LoadModule이 몰려있는 부분을 찾고 그 최상단에 아래와같이 php7apache2_4.dll의 설치 경로를 지정하는데 작성 양식은 아래와 같다.


    LoadModule php7_module "c:/Developer/Apache24/php7apache2_4.dll






21. ServerAdmin 속성을 찾고 자신이 사용하는 메일 주소를 도메인 까지 작성하여 기입한다.





22. ServerName을 찾고 기존 www.example.com:80 이라고 적힌부분을 localhost:80 으로 변경한다.





23. DirectoryIndex를 찾고 index.php 속성을 추가해 준다.





24. AddType application이 적혀있는 부분을 찾고 그 최 하단에

    AddType application/x-httpd-php .php .html .inc 라고 작성한다.




25. 이제 c:\Windows\System32 경로로 이동하여 cmd.exe 파일을 찾고 관리자 권한으로 실행시킨다.

 ① cmd.exe 파일을 찾고 마우스 오린쪽 버튼을 클릭한다.

 ② 화면에 나오는 메뉴중 상단의 관리자 권한으로 실행을 선택하여 터미널 창을 실행 시킨다.




26. 관리자 권한으로 터미널이 실행이 되면 아래 순서와 같이 입력한자.

 ① C:\> cd \

 ② C:\> cd Developer\Apache24\bin

 ③ C:\> httpd.exe -k install





27. 아파치 실행을 위한 방화벽 사용여부를 묻는다 엑세스 허용 버튼을 클릭하자.





28. 다시 터미널 창으로 돌아와서 httpd.exe -k start 를 입력하고 실행한다.





29. 이제 제어판의 관리 도구에 들어가 보자.





30. 시스템을 선택 실행한다.






31. 서비스 창이 띄면 아래 이미지와 같이 Apache24가 실행중인 것을 확인 할 수 있다.






32. 아파치가 실행중인 것을 확인 했으니 이제 php샘플 파일을 하나 실행해 보도록 하자.

    Apache24경로의 htdocs 폴더로 이동하도록 한다.





33. phpinfo.php 라는 파일을 생성한다.






34. phpinfo.php 파일의 코드는 아래와 같다.

 phpinfo.php

<?php

      phpinfo();

?>





35. 이제 웹브라우저의 주소창에 localhost/phpinfo.php 라고 입력해보면 아래와 같은 화면이 뜨는 모습을 확인 할 수 있다.






관련문서 : Amazon Linux 2 버전 - APM 세팅 하기






반응형

'PHP > PHP Setting' 카테고리의 다른 글

[PHP] PHP 파일 업로드시 용량 설정 변경  (0) 2020.01.16
[PHP] DB접속 테스트하기  (6) 2019.07.30
//