if(조건){ }
else { }
for($i=1;$i<=5;$i++){
}
while(조건){
}
if(조건){ }
else { }
for($i=1;$i<=5;$i++){
}
while(조건){
}
이제 본격적으로 파일을 사용하는 방법을 배워보도록 하겠습니다.
먼저 파일의 내용을 읽어서 화면에 출력하는 방법입니다.
먼저 파일을 여는 함수 fopen 입니다.
[fopen 사용법]
$fp = fopen("./data/16_1.txt", "r");
현재디렉토리 하위의 data 디렉토리에 있는 16_1.txt 파일을 읽기 전용으로 읽어 $fp 에 넣습니다. 이때 fp 에 저장된것은 일반적인 내용이 아니라 바로 출력 할 수가 없습니다.
$a = fread($fp, 1000);
파일 내용중 1000 자를 읽어 $a 에 넣습니다.
echo $a;
$a 를 화면에 출력합니다.
fclose($fp);
파일을 닫습니다.
이처럼 출력을 하였습니다.
그런데 줄바꿈이 안된것을 볼수 있습니다.
일반적인 문서에서 줄바꿈은 \n 이라는 보이지 않는 문자를 사용합니다. 이 문자는 화면상에서는 어떠한 동작도 하지 않기 때문에 줄바꿈 태그인 <br> 로 바꿔주어야 합니다.
이런 명령어가 nl2br() 함수입니다.
다음은 줄바꿈한 소스와 실행결과입니다.
이번에는 파일을 열어 줄별로 읽어 표시하는 소스입니다.
16_2.php 에 사용한 fread 는 지정한 글자수 만큼 파일 전체에서 읽는 반면 여기서 사용한 fgets 는 지정한 글자수 만큼 한줄에서 읽어 옵니다.
그리고 feof 는 파일의 끝인지 아닌지를 true 나 false 로 결과를 알려주는 함수입니다.
이번에는 파일을 생성해서 내용을 적어 넣는 소스입니다.
fopen 시 파일이 없으므로 새로 만들게 됩니다.
fwrite 는 파일에 내용을 적어 넣는 함수 입니다. 위치는 파일에서의 위치(파일 포인터)에 적어 넣게 됩니다.
배열정의 방법 1 (각 원소를 대입하여 정의하는 방법)
배열정의 방법 2 ( array() 문을 사용하여 키이름 없이 )
이런 방식으로 정의 하면 $arr[0], $arr[1], $arr[2] 로 정의가 되어집니다. 즉 키이름을 정의하지 않으면 0부터 1씩 증가하여 키이름이 정해집니다.
배열정의 방법 3 ( array() 문을 사용하여 키이름 까지 정의 )
$arr['key1'] = "value1", $arr['key2'] = "value2", $arr['key3'] = "value3" 로 정의되어 집니다.
=> 의 앞이 키, 뒤가 값이 되는 것입니다.
2. count 함수
count 함수는 배열의 원소의 개수를 알아내는 함수 입니다.
사용방법
15_1.php를 호출하면 3을 출력합니다. 즉 배열변수 $arr 의 원소 개수가 3개라는것을 출력하는 것입니다.
3. print_r 함수
일반 변수들은 echo 를 통해 출력하였습니다. 그럼 배열은 어떻게 출력할까요?
배열은 print_r 함수를 이용하여 출력을 합니다.
사용방법
[] 이 키, =>의 뒤가 값입니다.
4. explode 함수
위에서 배열변수에 대해 알아보았는데요. 그렇다면 특별한 규칙이 있는 문자열을 배열로 변환하고자 할때는 어떻게 해야할까요?
이럴때 사용하는 것이 explode 함수 입니다.
사용방법
explode 는 문자열에서 특정한 구분자를 기준으로 문자열을 자르고 잘라진 것들을 배열로 만들어 주는 함수입니다.
만들어진 배열은 키가 0부터 갯수만큼 만들어집니다.
아래 소스를 보면서 설명드리겠습니다.
위처럼 "사과,배,감,어린쥐" 문자열을 , 로 잘라서 배열로 만들었습니다.
5. implode 함수
explode 는 문자열을 구분자로 잘라 배열을 만들어 준다면 implode 는 그 반대의 일을 합니다.
즉 배열을 구분자를 사이에 두고 배열들의 값을 합쳐주는 일을 합니다.
사용방법
explode 의 반대로 배열을 , 를 구분자로 하여 값들을 합쳐진 것을 볼수 있습니다.
조건 반복문 (0) | 2013.10.24 |
---|---|
PHP 파일사용 (0) | 2013.10.24 |
PHP 연산자 (0) | 2013.10.24 |
PHP Include (0) | 2013.10.24 |
설치된 PHP버전 확인 (0) | 2013.10.24 |