함수에 global 주는 이유는 뭘까요? 채택완료
뭐.... 당연하게도 함수 내에서 전역변수를 불러오기 위해서
glabal을 쓴다..... 라는건 그렇다 치는데
단적인 예를들면
latest.lib.php 파일에서
function latest() 함수 내에
global $g5; <== 요게 명시되어있는데
그럼 global $g5; 변수 지정을 하는 이유? 의미?는 무엇일까요??
그리고 해당 변수는 파일 및 함수 내에서 어떤 값을 가지고 있나요??
이제 쌩 기초적인 부분은 겨우겨우 지나가면서
그누보드 파악하는 중인데 변수 활용이 너무 다양해서
골치아프네요 ㅎㅎ global 쓰는 이유 최소한 위 파일 내 함수내에서 하는 역할좀 알려주세요 ㅠ
답변 3개
함수에서는 전역변수를 바로 사용할 수 없고 사용하기 위해서는 global 으로 선언을 해줘야 사용할 수 있습니다. 이미 알고 게신 내용이죠.
$g5는 그누보드의 배열 변수이며 아래와 같은 값이 들어 있습니다.
그누보드에서 사용되는 DB Table 정보와 DB 연결정보등이 들어 있기 때문에 함수에서는 "global $g5;"로 해주면 함수내에서 아래의 모든 값들을 자유롭게 사용할 수 있는것이죠.
ex) "$g5['board_file_table']" <= 이건 게시판 첨부파일 정보가 담긴 테이블.
Array
(
[write_prefix] => g5_write_
[auth_table] => g5_auth
[config_table] => g5_config
[group_table] => g5_group
[group_member_table] => g5_group_member
[board_table] => g5_board
[board_file_table] => g5_board_file
[board_good_table] => g5_board_good
[board_new_table] => g5_board_new
[login_table] => g5_login
[mail_table] => g5_mail
[member_table] => g5_member
[memo_table] => g5_memo
[poll_table] => g5_poll
[poll_etc_table] => g5_poll_etc
[point_table] => g5_point
[popular_table] => g5_popular
[scrap_table] => g5_scrap
[visit_table] => g5_visit
[visit_sum_table] => g5_visit_sum
[uniqid_table] => g5_uniqid
[autosave_table] => g5_autosave
[cert_history_table] => g5_cert_history
[qa_config_table] => g5_qa_config
[qa_content_table] => g5_qa_content
[content_table] => g5_content
[faq_table] => g5_faq
[faq_master_table] => g5_faq_master
[new_win_table] => g5_new_win
[menu_table] => g5_menu
[social_profile_table] => g5_member_social_profiles
[connect_db] => mysqli Object
(
[affected_rows] => 0
[client_info] => mysqlnd 5.0.12-dev - 20150407 - $Id: 38fea24f2847fa7519001be390c98ae0acafe387 $
[client_version] => 50012
[connect_errno] => 0
[connect_error] =>
[errno] => 0
[error] =>
[error_list] => Array
(
)
[field_count] => 8
[host_info] => localhost via TCP/IP
[info] =>
[insert_id] => 0
[server_info] => 5.5.5-10.3.8-MariaDB
[server_version] => 50505
[stat] => Uptime: 114693 Threads: 7 Questions: 12612 Slow queries: 0 Opens: 81 Flush tables: 1 Open tables: 60 Queries per second avg: 0.109
[sqlstate] => 00000
[protocol_version] => 10
[thread_id] => 1611
[warning_count] => 0
)
[sms5_prefix] => sms5_
[sms5_config_table] => sms5_config
[sms5_write_table] => sms5_write
[sms5_history_table] => sms5_history
[sms5_book_table] => sms5_book
[sms5_book_group_table] => sms5_book_group
[sms5_form_table] => sms5_form
[sms5_form_group_table] => sms5_form_group
[title] => 그누보드5
[lo_location] => 그누보드5
[lo_url] =>
)
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
무의미하다고 생각되면 주석처리하고 다시 브라우저를 열어보세요..
그 때 벌어지는 일을 보면 필요한 것인지 알 수 있겠죠?
개발자도구 콘솔창을 열어보면 해당 오류가 주르륵 보일 수도 있고...
답변에 대한 댓글 1개
댓글 감사합니다!! ㅎㅎ
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
이게 너무 궁금했었거든요 ㅠㅠ
각각의 변수가 어떤 역할을 하는지 ㅠㅠ
그누보드는 서로 파일간에 인클루드가 되어서
파일간에 상호역할 하는건 정리를 해놓았었는데
뜬금없는 글로벌이나 리스트 그런 몇몇개가 골치 아팠는데
궁금한 부분 중에서 많은 부분이 해결되었습니다!!
너무 감사합니다!!