2020-12-25

php : eval 텍스트를 변수로 실행

 <?

$txt_1 = '

$aaa = 2;

$bbb = 3;

$ccc = 4;

echo $ddd = $aaa + $bbb + $ccc ;

echo "<br>";

echo $eee = $aaa.$bbb.$ccc ;

';

eval($txt_1);


echo "<br><br>

ddd : $ddd<br>

eee : $eee

";


/*

9

234


ddd : 9

eee : 234

*/

?>


<?

$txt_1 = '

$txt_[aaa] = 5;

$txt_[bbb] = 6;

$txt_[ccc] = 7;

echo $ddd = $txt_[aaa] + $txt_[bbb] + $txt_[ccc] ;

echo "<br>";

echo $eee = $txt_[aaa].$txt_[bbb].$txt_[ccc] ;

';

eval($txt_1);


echo "<br><br>

ddd : $ddd<br>

eee : $eee

";


/*

18

567


ddd : 18

eee : 567

*/

?>

2020-12-24

PHP 함수(function)에 기존에 없던 변수 추가하기

 함수(function) 작업을 하다보면, 나중에 함수의 변수를 추가해야 하는데

수정할 부분이 너무 많거나, 기억이 안나면

다음과 같이 추가되는 변수를 처리할 수 있다.


<?

function testtest($text, $bbb=""){

if ( $bbb == "" ) $bbb = "빈값";

echo "$text, $bbb";

}


echo testtest("이것은 무엇인가요?");

echo "<br><br>";

echo testtest("이것은 무엇인가요?", "");

echo "<br><br>";

echo testtest("이것은 무엇인가요?", "홍길동");

?>


/* 결과값 : 

이것은 무엇인가요?, 빈값


이것은 무엇인가요?, 빈값


이것은 무엇인가요?, 홍길동

*/

2020-12-22

php : 글자수 자르기

 php에서 글자수를 자르는 함수


<?

$sms_txt = "일이삼사오육칠팔구1 일이삼사오육칠팔구2 일이삼사오육칠팔구3 일이삼사오육칠팔구4 일이삼사오육칠팔구5 일이삼사오육칠팔구6 일이삼사오육칠팔구7 일이삼사오육칠팔구8 일이삼사오육칠팔구9 일이삼사오육칠팔구10 일이삼사오육칠팔구11 일이삼사오육칠팔구12";


echo mb_substr($sms_txt, 0, 100); // 검색어. UTF-8 환경에서


echo mb_substr($sms_txt, 0, 100, "EUC-KR"); // 검색어. EUC-KR 환경에서

?>





html css 텍스트 줄바꿈

 글자단위로 줄바꿈

<div style="width:650px; word-break:break-all;"> 

</div>


normal : 기본값. 단어 단위로 줄바꿈

break-all  :  글자 단위로 줄바꿈

keep-all  :  띄어쓰기 기준(브라우저에 따라 확인요함.)


php : 웹에서 html 코드를 그대로 보여줄때

 php로 작성한 웹에서 html 코드를 그대로 보여주어야 할 때


<?

echo htmlspecialchars($변수명);

?>

2020-12-21

php 숫자(음수) 추출함수 preg_replace() : 전화번호, 가격

 php 숫자(음수) 추출함수 preg_replace() 입니다. 다음의 용도로 유용합니다.


숫자만 : 전화번호를 DB에 저장할 때

숫자만(음수포함) : 가격을 DB에 저장할 때


<?

$price = " +- 125 ,0\n00^\/ 원이에요."; 

$data = preg_replace("/[^0-9]*/s", "", $price); // 숫자만 추출하기 

$data2 = preg_replace("/[^0-9\-]*/s", "", $price); // 숫자만(음수포함) 추출하기 


echo "$price => $data => $data2"; 

// +- 125 ,0 00^\/ 원이에요. => 125000 => -125000

?>


==============

특정단어 "D-"가 있으면, 그 단어를 비우기

<?

$order_num = "D-1234567-abcdefg";


if ( @preg_match("/D-/",$order_num) ) {

$order_num = eregi_replace("D-","",$order_num);

echo $order_num ;

}

?>

2020-12-20

php : 엑셀파일(excel .xls .csv)로 저장할때 전화번호 앞 0이 빠질때

php에서 엑셀(excel .xls .csv)로 전화번호를 출력하니 전화번호 맨앞에 0이 자동으로 빠져버린다.

1)
해결방법은 style="mso-number-format:'@';" 을 주면 된다.

다음처럼 한다.
<td style="mso-number-format:'@';">01010041004</td>


2) 위처럼 해서 .xls 파일로 저장해서 웹에서 엑셀입력을 했는데, 여전히 맨앞 0이 빠져서 올라가면...

해결방법은 엑셀프로그램에서 .xls 파일을 .xlsx로 다시 저장해서 올리면 문제가 해결된다.

PHP 글자수 계산하기 : EUC-KR, UTF-8 환경에서

 <?
$sms_txt = "한글입니다한글입니다"; 

$t_length = mb_strwidth($sms_txt,'EUC-KR');
 
$t2_length = mb_strwidth($sms_txt); 

echo "$sms_txt // $t_length byte / $t2_length";
// 둘다 결과값이 같다.
?>



<?

$sms_txt = "한글입니다한글입니다."; 

$t_length = mb_strwidth($sms_txt,'UTF-8'); 
$t2_length = mb_strwidth($sms_txt); 

echo "$sms_txt // $t_length byte / $t2_length";

// 둘다 결과값이 같다.

?>





2020-12-15

대한민국 1등~ "펜션홈피 직접예약 시스템" Mstay를 소개합니다.

1) Mstay의 간략한 소개

펜션,캠핑장 등을 운영하면 홈페이지에 실시간예약관리시스템을 연결하여 인터넷예약을 받습니다. 우리나라에 인터넷이 민간에 도입된게 1998년경입니다. 그리고 인터넷 쇼핑몰이 마구마구 만들어지고, 인터넷이 본격적으로 확 퍼진게 2000년대 들어서면서 부터니까 이제 약 20년이 되었네요.

우리나라에 인터넷이 도입된 초창기는 펜션이라는 단어가 없었고, 그 당시는 민박이라는 명칭을 사용하고 있었습니다. 인터넷으로 민박예약이 인기를 끌면서 숙박시설이 고급화되기 시작했습니다. 시설과 규모가 고급화된 숙박업소들이 기존의 민박업소와 차별화를 위해 펜션이라는 명칭을 사용하기 시작했습니다. 이제는 민박이라는 명칭은 거의 사용하지 않죠. 그 초창기부터 실시간예약을 펜션 홈페이지에 연결 사용하도록 서비스를 제공해온 원조 업체중 한 곳을 소개합니다.

Mstay는 대한민국 1등~ "펜션홈피 직접예약 시스템" 입니다. Mstay는 17년동안 380만건의 예약을 서비스 했습니다. Mstay 첫 서비스는 2003년 시작되었습니다. 그동안 원조업체들이 합병과 폐업 등으로 대부분 역사 속으로 사라졌지만, Mstay는 꾸준히 서비스를 유지하고 발전시켜 왔습니다.


2) Mstay의 서비스 체계

Mstay의 서비스 기본체계는 사실 단순합니다. Mstay 서비스 URL을 펜션별로 제공하고, 펜션 홈페이지에서 실시간예약달력 URL을 메뉴에 연결시킵니다. 손님들은 펜션홈페이지에 연결된 실시간예약달력 페이지에서 예약을 잡습니다. 펜션관리자는 입금이 되면 관리자페이지에서 예약대기상태를 완료로 바꾸고 이메일과 문자를 손님에게 보냅니다.

기본체계는 이렇게 단순하지만, 오랜기간 숙박서비스가 발전하면서 손님과 펜션관리자의 요구치가 호텔서비스 이상으로 높아졌습니다. 그래서 Mstay의 관리자페이지도 무척 복잡하고 정교해졌습니다. 상당히 메뉴도 많고 세세한 기능들이 제공되고 있습니다.


3) Mstay를 펜션,캠핑장에서 사용하려면 사용료는

   (1) 예약건당 350원을 적립금에서 차감하는 방식으로 사용할 수 있습니다.
   (2) 1년 정액제로, 예약건수에 상관없이 일정한 사용료를 내고 1년동안 사용할 수 있습니다.


4) Mstay의 예약대행 연동서비스

Mstay는 22곳의 예약대행업체(네이버, 옥션, 지마켓, 11번가, 모두투어, 야놀자 등)와 연동하여 서비스를 제공합니다. 아래는 홈페이지에서 캡쳐한 이미지를 올립니다.