블로그 이미지
veresuke's House!!
verere

calendar

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Recent Comment

Recent Trackback

  • 29,160total
  • 9today
  • 5yesterday

'PHP'에 해당되는 글 3건

  1. 2009/03/07 [PHP]배열을 상수로 사용하기
  2. 2008/10/24 [PHP] 가변변수에 대해서 (2)
  3. 2006/08/15 가볼만한 곳(웹)
2009/03/07 23:29 Study/Web

정말 간만에 올리는 공부글이 아닌지 ㅋ


코딩을 하다가 배열을 상수로 사용할 필요가 생겼다.

constant, define을 이리저리 사용해보다가 생각만큼 안 돼서

인터넷을 뒤적 뒤적~~

그러다가 발견한게 var_export()eval()을 이용한 방법이다.

요렇게~~


<?PHP

 Define(
   '_TESTARRAYCONSTANT',
   var_export(
     array(
       '1'  => 'the value is 1',
       '10' => 'the vaue is 10',
       '100' => 'the value is 100',
       '1000' => 'the value is 1000'
      ),
     true
    )
  );

 $testDefine = eval('return ' . _TESTARRAYCONSTANT . ';');

 print _TESTARRAYCONSTANT;

 print '<BR /><BR />';

 print $testDefine[10];
 print '<BR />';
 print $testDefine[1000];

?>


결과를 보면 짐작들 하시겠지만 요렇다~

array('1'  => 'the value is 1', '10' => 'the vaue is 10', '100' => 'the value is 100',  '1000' => 'the value is 1000')

the vaue is 10
the vaue is 1000


이 방법을 사용하면서 좀 신경써야 할 부분은

var_export() 부분이다.

var_export()의 파라미터 중 두 번째 파라미터에 꼭!! true를 해줘야 한다는 것이다.

true를 안 하면 접근이 안 된다는 ㄷㄷㄷ


슬슬 이쯤에서 var_export()와 eval에 대해 살펴보는 시간을 ㅋ


var_export()

변수의 표현을 출력하거나 문자열로 반환하는 함수로 함수의 형태는 요렇다
mixed var_export ( mixed expression [, bool return])

파라미터로 받은 변수에 대해 구조 정보를 반환하는데 언뜻 보면 PHP 디버깅을 할 때 많이 쓰이는 var_dump()와 비슷하기도 하다.
하지만 var_dump()와의 차이점은 반환하는 표현이 유요한 PHP 코드이고 또 다른 점은 PHP5에서 객체의 protected, private 속성을 반환한다는 것이다.
두 번재 파라미터를 살펴보면 bool return으로 되어있다. 말 그래도 반환을 할 것인지 안 할 것인지 결정한다. 디폴트는 false다. 변수 표현을 반환하길 바란다면  true로 셋팅해 주시길 ㅋ

eval()

문자열로된 PHP 코드를 실행, 해석, 인식 시켜주는 함구로 함수의 형태는
mixed eval ( string code_str) 이렇다
요 함수는 다로 설명할 만한게....
그냥 짤막한 예를 들어면
$testPlusVar = '\$resultSum = 1 + 2;';
이렇게 있을 때
eval('$testPlusVar');
print $resultSum;
한다면 결과는
3
이렇다;;


오늘도 대충 글이 끝난것(?) 같다.

오늘도 이쯤에서 끝을... ㅋ

'Study > Web' 카테고리의 다른 글

[PHP]배열을 상수로 사용하기  (0) 2009/03/07
[JSON]클라이언트에서 JSON 데이터 사용하기  (0) 2008/11/06
[AJAX]timeout  (1) 2008/11/05
[PHP] 가변변수에 대해서  (2) 2008/10/24
posted by verere
2008/10/24 15:50 Study/Web
오랫만에 올리는 스터디(?)글일것 같다.
오랫만에 올리는 글이니 만큼 간단하게 시작하기로...
절!대!! 제대로 정리된 자료가 없어서 그런것은 아니다;;

가변변수.. 가끔씩 프로그래밍을 하다보면 가변변수를 쓰고 싶을 때가 있다.
가령 $변하는 부분_btn 과 같은
더 자세히 써보면 $submit_btn, $del_btn, $mod_btn과 같이 뒤의 '_btn'은 고정시키면서 앞 부분은 변화하도록 하는것과 같이

처음에 몰라서 고생한걸 생각하면 ㅠ_____ㅠ

정말 간단하다.
${$str}_btn;  <-- 요런 형식으로 하면 된다.
$str에 값이 'submit'이 들어있으면 변수 이름은 $submit_btn이 되는 것이고
'del'이 들어있으면 $del_btn이 되는 것이다.
간단하지만 모르면 짜증난다는....;;

배열의 값들을 이용해 만드는것도 잠~~깐만 봐보자

$aVarName = array('one', 'two', 'three');

이런 식으로 배열에 값이 있다면

foreach($aVarName as $key => $val) {
    ${$val} = null;
}

이런식으로 사용해도 되고 아니면,

for($i=0; $i<3; $i++) {
    ${$aVarName[$i]} = null;
}

이렇게 하면 총 3개의 변수가 만들어진다
$one, $two, $tree 요렇게 ㅋㅋ

오랫만에 쓰니 더 허접한것 같지만
이번글은 여기서 마치고 잠시 쉬자는ㅎ

참고로 먼가 잘못됐다거나 모르겠으면 댓글로 남겨주세요~~~~ ^_________^

'Study > Web' 카테고리의 다른 글

[AJAX]timeout  (1) 2008/11/05
[PHP] 가변변수에 대해서  (2) 2008/10/24
[JAVASCRIPT]Html에서 탭형식 내부변환하기  (2) 2007/03/12
[HTML]Div와 Span  (2) 2007/03/12
posted by verere
2006/08/15 18:45 Study/Web

http://phpschool.com/index.php



    http://www.apmsetup.com/



                    http://www.nzeo.com/



ASP & ASP.NET: http://www.taeyo.pe.kr/

heeya61님의 블로그: http://blog.naver.com/heekun1015?Redirect=Log&logNo=90006176910

webstudy cafe: http://cafe.naver.com/okjsp.cafe?iframe_url=/ArticleList.nhn%3Fclubid=10884811%26menuid=46%26listtype=M%26boardtype=L

'Study > Web' 카테고리의 다른 글

[JAVASCRIPT]Html에서 탭형식 내부변환하기  (2) 2007/03/12
[HTML]Div와 Span  (2) 2007/03/12
다음 샘플 테스트  (2) 2007/01/09
가볼만한 곳(웹)  (0) 2006/08/15
posted by verere
TAG asp, PHP, web