$_SERVER['HTTP_REFERER']

를 사용하면 이전 접속 경로를 확인할 수 있다.


단점은 주소를 직접 치고 들어오거나, 즐겨찾기에서 접속하는 경우

또 onclick 으로 접속하는 경우 REFERER로 체크가 불가능하다.




<?php
$material= array('양파'=>'3000', '돼지고기'=>'12000', '다진 마늘'=>'2000', '간장'=>'3980');
 
$group_data = array('name'=>'제육볶음');
$group_data['material'] = $material;
 
$output_data = json_encode($group_data, JSON_UNESCAPED_UNICODE);
 
Header('Content-Type: application/json');
print($output_data);
?>




$fullCode = "아리랑 아라리요"
$code = "아리랑";

if(strpos($fullCode, $code) !== false){
    echo "아리랑 문자열이 있습니다.";
}else{
    echo "아리랑 문자열이 없습니다.";
}




$str = "a891b120adq2031a012";
$num = preg_replace("/[^0-9]*/s", "", $str); 

결과
8911202031012




$contents = nl2br($contents);

nl2br 함수를 사용하면 엔터를 적용했던 \r\n이 자동으로 <br /> 태그로 치환되서 적용된다.




$contents = htmlspecialchars($contents);

html을 그대로 복사해서 가져온 것이거나 에디트에서 html 코드를 사용했으면
그걸 DB에서 불러오는걸 htmlspecialchars 코드로 불러오면 된다.






가끔 나누거나 곱할 경우
0과 곱하거나 나누경우에 NaN이 뜰때가 있다.

그럴때 해결방법이다.

$NaN_check = 0;

if(is_nan($NaN_check)){
    $NaN_check = 0;
}

으로 해주면 간단히 해결된다.

만약에 NUMBER_FORMAT을 사용해서 초기화 해준 다음
출력했을 때 nan 으로 소문자로 뜨는 경우는 그 값에 문자로 들어간 것이기 때문에

if(is_nan($NaN_check) || $NaN_check === 'nan'){
    $NaN_check = 0;
}

이렇게 체크해주면 된다.






모바일 접속시 PC환경인지 모바일 환경인지 체크하는 소스이다
<?php 
$mobilechk = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/i';  

// 모바일 접속인지 PC로 접속했는지 체크합니다. 
if(preg_match($mobilechk, $_SERVER['HTTP_USER_AGENT'])) { 
    echo "<script>location.href='/mobile/mobile_login.php';</script>"; 
}

'PHP' 카테고리의 다른 글

[PHP] html 코드 그대로 출력  (0) 2017.11.27
[PHP] NaN 뜰때 해결방법  (0) 2017.11.27
[PHP] define과 defined의 차이  (0) 2017.11.27
[PHP] PHPExcel을 이용해서 엑셀 다운로드  (0) 2017.11.27
[PHP] $_SERVER[''] 정리  (0) 2017.11.27



define() 함수 : 상수를 정의한다. 상수 이름과 상수값을 인수로 넣어주면 된다.
 
<?php define("변수", "변수값"); ?>
 
defined() 함수 : 변수가 정의되어 있는지 검사한다.
 
외부에서 직접 URL을 입력하여 해당 페이지로 접근하려고 할 때 이를 막는데 사용할 수 있다.
 
defined() 함수를 이용해 값이 정의되어 있을 때만 해당 페이지를 실행할 수 있게 한다.

'PHP' 카테고리의 다른 글

[PHP] NaN 뜰때 해결방법  (0) 2017.11.27
[PHP] 모바일 접속 체크  (0) 2017.11.27
[PHP] PHPExcel을 이용해서 엑셀 다운로드  (0) 2017.11.27
[PHP] $_SERVER[''] 정리  (0) 2017.11.27
[PHP] mySql 연결하기  (0) 2017.11.27



PHPExcel을 사용해서 엑셀을 다운로드 하는 방법이다.
require_once($_SERVER['DOCUMENT_ROOT']."/lib/Classes/PHPExcel.php");

 //한글 깨짐 방지
header("Content-Type:text/html;charset=utf-8");

//PHPExcel class 로드
$objPHPExcel = new PHPExcel();

$objPHPExcel->getProperties() ->setCreator("작성자") 
                                                    ->setLastModifiedBy("최종 수정자") 
                                                    ->setTitle("타이틀") 
                                                    ->setSubject("주제") 
                                                    ->setDescription("설명") 
                                                    ->setKeywords("키워드") 
                                                    ->setCategory("라이센스");
//시트이름 변경 
$objPHPExcel->setActiveSheetIndex(0)->setTitle('변경 시트 이름');

//셀 가로 크기 설정 ( 설정은 되나 0.45 정도 적게 적용됨 )
$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('A')->setWidth(4);

//셀 세로 높이 설정 ( 가로와 다르게 정확히 적용 됨 )
$objPHPExcel->setActiveSheetIndex(0)->getRowDimension(1)->setRowHeight(21);

//글자 굵게 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getFont()->setBold(true);

//글자 사이즈 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getFont()->setSize(16);

//글자색 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getFont()->getColor()->setARGB("FFFFFFFF");

//셀값 입력 
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("A1", "제목")
                                                                ->setCellValue("A2", 12345); // 여러개를 추가하려면 이렇게 하면 된다.

//숫자 형 변환 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1:A2')->getNumberFormat()->setFormatCode('#,##0');

//가로정렬 
// 중앙 정렬
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
// 오른쪽 정렬
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); 
// 왼쪽 정렬
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);

//세로정렬 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1:S343')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);


//배경색 
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1:A2')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID)->getStartColor()->setARGB("FFD9D9D9");


//이미지 추가
$path = "이미지경로";
$objDrawing = new PHPExcel_Worksheet_Drawing(); 
$objDrawing->setName('Photo_3'); 
$objDrawing->setDescription('Photo_3'); 
$objDrawing->setPath($path); 
$objDrawing->setResizeProportional(true); 
$objDrawing->setWidth(400);  // 이미지 크기
$objDrawing->setOffsetX(35);  // 이미지가 시작할 위치를 퍼센트로 적용 셀의 크기에 가로가 35%만큼 이동해서 시작
$objDrawing->setOffsetY(5);  // 이미지가 시작할 위치를 퍼센트로 적용 셀의 크기에 세로가 5%만큼 이동해서 시작
$objDrawing->setCoordinates("A1"); 
$objDrawing->setWorksheet($objPHPExcel->setActiveSheetIndex(1));


//시트 생성 및 이름 지정 
$objPHPExcel->createSheet();  
$objPHPExcel->setActiveSheetIndex(1)->setTitle('새로운 시트 이름');


추가한 시트는 setActiveSheetIndex 여기의 번호를 올리면 됨.



'PHP' 카테고리의 다른 글

[PHP] 모바일 접속 체크  (0) 2017.11.27
[PHP] define과 defined의 차이  (0) 2017.11.27
[PHP] $_SERVER[''] 정리  (0) 2017.11.27
[PHP] mySql 연결하기  (0) 2017.11.27
[PHP] 이중 배열 정렬하는 방법  (0) 2017.11.27

+ Recent posts