오라클 디비로 사용 한는되요 대문자 때문에 문의 드립니다.
본문
안녕하세요
오라클 디비로 연결해서 사용합니다.
// Oracle
function sql_oci_fetch_array($result)
{
$row = @oci_fetch_assoc($result);
set_lowercase($row);
return $row;
}
// Oracle 오라클 기본 필드 대문자인데 소문자로 변환
function set_lowercase(&$row) {
if(is_array($row)) {
foreach ($row as $key => $value) {
$lowerkey = strtolower($key);
$row[$lowerkey] = $value;
}
}
}
그래서 ROW 를 가져오면
Array
(
[P_IDX] => 101
[P_GROUP] =>
[P_TYPE] => faq
[P_TYPE2] => table
[P_CODE] => faq
[P_TITLE] => 자주묻는질문
[P_FILE] => 0
[P_FILECNT] => 1
[P_LINK] => 0
[P_LINKCNT] => 1
[P_NEWDATE] => 1
[P_CATEGORY] => 1
[P_AUTHORITY] => 0
[P_CRDT] => 23/11/24 10:54:21.000000
[P_UPDT] => 23/11/24 10:54:21.000000
[P_DELYN] => 0
[P_GROUPYN] =>
[P_CAPTCHA] => 0
[TRIAL165] => T
[DATA_CNT] => 0
[RNUM] => 1
[TOTAL_CNT] => 7
[p_idx] => 101
[p_group] =>
[p_type] => faq
[p_type2] => table
[p_code] => faq
[p_title] => 자주묻는질문
[p_file] => 0
[p_filecnt] => 1
[p_link] => 0
[p_linkcnt] => 1
[p_newdate] => 1
[p_category] => 1
[p_authority] => 0
[p_crdt] => 23/11/24 10:54:21.000000
[p_updt] => 23/11/24 10:54:21.000000
[p_delyn] => 0
[p_groupyn] =>
[p_captcha] => 0
[trial165] => T
[data_cnt] => 0
[rnum] => 1
[total_cnt] => 7
)
변환은 잘되는되요
함수를 사용해서 소문자로 변경을 해서 가져오는되요
$row["P_idx"] 필드 이렇게 가져오면
Notice: Undefined index: P_idx in...
이러면서 데이터를 못가져오네요...
고수님들 조언부탁드립니다.
답변 3
다음과같은 방법도 있으니 참고해 보세요
function sql_oci_fetch_array($result)
{
$row = @oci_fetch_assoc($result);
if (is_array($row)) {
$row = array_change_key_case($row, CASE_LOWER);
}
return $row;
}
이렇게 하면 대소문자 구분 없이 키를 사용할 수 있지 않을까 합니다.
!-->
// $row["P_idx"]
$row["p_idx"]
배열키를 소문자로 바꿔주세요[P_idx] >>[p_idx]