ini_key_exists 함수 설명 및 활용 예제
함수 설명
ini_key_exists
함수는 현재 열려 있는 ini 파일에서 특정 키가 존재하는지를 확인합니다. 키가 존재하면 true
를 반환하고, 존재하지 않으면 false
를 반환합니다. 이 함수는 오류를 방지하기 위한 필수적인 체크는 아니지만, ini 파일에 특정 데이터가 저장되어 있는지를 확인하는 데 유용할 수 있습니다.
문법
ini_key_exists(section, key);
인자 설명
인자 | 타입 | 설명 |
---|---|---|
section | 문자열 | 확인할 ini 파일의 섹션 이름 |
key | 문자열 | 확인할 키 이름 |
반환값
- 키가 존재하면
true
- 키가 존재하지 않으면
false
예제
ini_open("savedata.ini");
if (!ini_key_exists("save1", "name")) {
global.name = "Player1";
}
ini_close();
위 코드는 "savedata.ini" 파일을 열고, "save1" 섹션에 "name" 키가 존재하지 않을 경우 global.name
변수를 "Player1"로 설정합니다.
활용 예제
예제 1: 기본 값 설정
ini_open("settings.ini");
if (!ini_key_exists("graphics", "resolution")) {
ini_write_string("graphics", "resolution", "1920x1080");
}
ini_close();
이 코드는 "settings.ini" 파일에서 "graphics" 섹션의 "resolution" 키가 없으면 기본 해상도를 "1920x1080"으로 설정합니다.
예제 2: 사용자 이름 저장
ini_open("userdata.ini");
if (!ini_key_exists("user", "username")) {
ini_write_string("user", "username", "Guest");
}
ini_close();
이 코드는 "userdata.ini" 파일에서 "user" 섹션의 "username" 키가 없으면 기본 사용자 이름을 "Guest"로 설정합니다.
예제 3: 게임 진행 상황 확인
ini_open("progress.ini");
if (!ini_key_exists("level", "current")) {
ini_write_real("level", "current", 1);
}
ini_close();
이 코드는 "progress.ini" 파일에서 "level" 섹션의 "current" 키가 없으면 현재 레벨을 1로 설정합니다.
예제 4: 설정 값 로드
ini_open("config.ini");
if (ini_key_exists("audio", "volume")) {
global.volume = ini_read_real("audio", "volume", 100);
} else {
global.volume = 100; // 기본 볼륨
}
ini_close();
이 코드는 "config.ini" 파일에서 "audio" 섹션의 "volume" 키가 존재하면 해당 값을 로드하고, 존재하지 않으면 기본 볼륨을 100으로 설정합니다.