블로그 이미지
'무른모'란 부드럽다라는 뜻을 가진 '무르다'라는 말과 도구, 연장을 뜻하는 '연모'라는 순 우리말의 합성어로 소프트웨어를 말합니다. seanhigher

카테고리

분류 전체보기 (161)
Blog srart (16)
Dev Center (94)
Real Life (13)
Mac life (21)
Naver life (17)
Total659,292
Today1
Yesterday53

'key'에 해당되는 글 2건

  1. 2010.05.03 Arrary 타입 변수 사용하기.
  2. 2010.04.04 OSX 부팅시 옵션 키.
배열은 데이터를 저장하는데 있어서 매우 유용한 방법중의 하나이다. 데이터의 순서와 인덱스를 이용하여 같은 종류나, 묶어두어야 할 자료들을 손쉽게 구분이 가능하게 할 수 있다. 변수 형태의 구분이 없는 PHP 에서는 더욱더 유연하고 다양하게 배열의 변수를 사용할 수 있다.



Array 타입의 변수.
배열은 키(key)와 값(value)의 쌍으로 구성되어 있다. 배열을 구성하는 키는 정수형과 문자열로 표현이 가능하다. 특정한 문자열을 지정하지 않을 경우 '0' 부터 차례대로 키값을 가지게 되는데 이를 인덱싱 된 배열이라고 부른다. 배열의 키가 문자열의 형태로 된 첨자를 가지고 있다면 연관 배열이라고 한다.

<?
  $people[0] = "Betty";          // 인덱싱 배열(첫번째 원소)
  $people[1] = "Jane";          // 인덱싱 배열(두번재 원소)
  $people[2] = "Steven";       // 인덱싱 배열(세번째 원소)

  $people['man'] = "Charley";          // 연관 배열(key = 'man')
  $people['woman'] = "Grace";        // 연관 배열(key = 'woman')
?>

배열은 일반적인 변수형과는 근본이 다르다. 정수형, 실수형, 문자형과 같은 변수형은 기본적인 타입에 속하지만, 배열은 이 기본 형태의 데이터를 조금더 발전시킨 형태라고 할 수 있다. 또한, 키와 값이라는 쌍으로 이루어져 있기 때문에 일반적인 변수의 사용과는 조금은 다른 형태를 취하게 된다.

<?
  $subject = array(0 => "국어", 1 => "수학", 2 => "영어", 3 => "사회");
  $score = array('korean' => '89', 'math' => '93', 'society' => '87');
  $people = array('Betty', 'Jane', 'Steven');
?>

배열변수 '$subject' 같이 키가 숫자로 되어 있는 인덱싱 배열의 경우는 $subject[0], $subject[1] 과 같이 숫자의 첨자로 '국어', '수학' 과 같은 변수값에 접근 할 수 있다. '$score' 는 키가 문자열로 이루어져있는 연관배열은 'korean', 'math' 와 같이 문자열로 이루어진 첨자를 사용할경우엔 $score['korean'], $score['math'] 와 같은 방법으로 그 값인 89, 93 에 접근하여 사용할 수 있다. 만일 '$people' 와 같이 키를 선언하지 않은채로 데이터값만 갖는 경우에는 자동적으로 '0' 부터 차례대로 숫자키가 부여된 인덱싱 배열이 된다. 'Betty' 의 값에 접근하고자 한다면 $people['0']이 되며, 'Jane'에 접근하려고 한다면 $people['1'] 을 통해서 접근이 가능하게 된다.


배열을 사용하는 또 하나의 방법.
배열을 사용하게 될 경우에는 배열을 선언하면서, 그 값을 입력해 주어야 한다. 하지만, 그 값이 완전히 준비되어 있지 않을 경우에는 배열의 각 원소별로 값을 정해줄 수 있다.

<?
  $people[] = "Betty";
  $people[] = "Jane";
  $people[] = "Steven";
?>



배열의 배열, 다차원 배열
배열을 더 유용하게 만드는 것중 하나는 배열을 중첩하여 사용이 가능하다는 것이다. 물론 너무 많은 중첩을 하게 된다면 PHP를 해석하는 파서에 무리가 가겠지만, 적절한 중첩을 이용한 배열은 변수의 사용가능성을 수십, 수백배 배가 시켜준다. 배열을 중첩한 다차원 배열의 사용법은 일반적인 배열의 사용법과 같다. 단지, 배열의 값에 일반적인 값 대신 배열의 값이 들어간다는 것이 다를 뿐이다.

<?
  $people = array(
                 array('name' => 'Betty', 'sex' => 'female', 'age' => '24'),
                 array('name' => 'Jane', 'sex' => 'female', 'age' => '29'),
                 array('name' => 'Steven', 'sex' => 'male', 'age' => '28')
                 );
?>


위의 배열에서 steven 의 나이인 28 의 값에 접근을 하고 싶다면 $people[2]['age'] 와 같이 사용할 수 있다. 차수가 높아질수록 첨자가 하나씩 늘어나게 된다.

Posted by seanhigher

댓글을 달아 주세요

OSX 부팅시 옵션 키.

Mac life / 2010. 4. 4. 18:54
윈도우를 사용하다가 문제가 발생하면 키보드의 'F8'키를 눌러서 안전모드로 부팅하여 문제를 찾아내고 해결할 수 있다. 리눅스에서도 부팅 옵션을 설정해 줄 수 있다. 그리고, OS X에서도 다양한 부팅 옵션 키를 제공한다.


그림1. OS X 부팅 화면

일반적으로 아무런 문제가 없는 OS X 가 잘 설치 되어 있을때, 아무런 키도 누르지 않으면 위와 같은 화면이 나오고 부팅이 진행 될 것이다. 하지만, CD-ROM에 CD가 삽입되어 있거나, 부트캠프로 윈도우가 설치되어 있다거나, OS X에 치명적인 문제가 발생했다면 문제를 해결하기 위한 다른 방식의 부팅방법이 필요하다. 부팅에 관련한 옵션 키를 누를때는 사과로고 아래의 상태막대가 나타나기 전에 키를 누르고 있어야 부팅옵션이 작용한다.


C : CD-ROM에 CD가 삽입되어 있을 경우 CD로 부팅을 할 수 있다.

D : 물리적으로 첫번째 하드 디스크를 시동 디스크로 선택한다. 논리적으로 파티션을 분할하여 시동디스크를 만들었을 경우, 원래의 시동 디스크로 부팅 할 수 있다.

N : 네트워크 부팅이 가능하도록 한다. 맥북 에어와 같이 물리적 CD-ROM 드라이브가 없을 경우, 다른 컴퓨터에 네트워크로 접근하여 OS X 의 설치가 가능하다.

R : 모니터의 해상도를 기본 해상도로 설정하여 부팅한다. 이 옵션은 OS X에 외부 모니터를 연결하여 해상도 문제가 발생 했을 때 해상도를 기본 셋팅으로 바꾸어 준다.

T : OS X 가 설치되어 있는 하드디스크를 외장하드로 인식하게 한다. 복구 불가능한 문제가 발생 했을 경우 하드 디스크 안의 데이터를 다른 컴퓨터에 옮길 수 있도록 외장하드처럼 인식하게 만들어 준다. FireWire를 통하여 연결이 가능하다.

Option : boot camp를 사용할 경우 부팅 티스크를 선택할 수 있다. 부팅이 가능한 디스크가 여러개 일 경우에도 선택이 가능하다.
Mouse button held down : CD-ROM에 삽입되어 있는 미디어를 부팅시에 꺼낼 수 있다.

Shift : 시작프로그램을 실행하지 않음으로 안전모드로 부팅할 수 있다.

Command + V : 콘솔 모드로 부팅을 하게 되며, 시작시에 어떤 실행들이 이루어지는지 텍스트 형식으로 볼 수 있다.

Command + S : 싱글 유저 모드로 부팅을 한다. 부팅이 완료되면 사용자가 커맨드를 입력할 수 있게 된다. 문제를 해결하기 위해 사용된다.

Command + Option + P + R : PRAM을 초기화 한다. PRAM에는 OS X 가 시동하는데 있어서 기본이 되는 정보들이 저장되어 있다.

Command + Option + N + V : 전원관리 시스템을 초기화 한다. 배터리에 관한 문제가 발생 했을 경우 사용한다.


위의 옵션들은 대부분 문제가 발생했을 경우 사용하게 된다. 지금 당장은 필요하지 않은 옵션들이지만, 문제가 발생했을 경우, 위의 옵션을 통해서 해결할 수 있는 문제들도 많이 있기 때문에 알아두는 것이 유용하다.

Posted by seanhigher

댓글을 달아 주세요

최근에 달린 댓글

글 보관함