디시가 php 코드를 못쓰게 하는 관계로 스샷으로 대체함.
그누보드는 php 3~4시절에 쓰던 방식으로 쓰는 평범한 old php코드임
------------
15번 줄에 일단 어디서 튀어나왔는지 모를 전역변수 $group 가 있는데
이거는 common.php 에서 현재 게시파니 속한 그룹 권한이 담겨있는 배열임
$group 를 초기화 하지않기때문에 뭐가 들어있는지 모름
그누 오래 만지는 사람은 $group 는 그누보드의 권한테이블 컬럼이 몽땅담겨있으니까
DB 스키마 보면 여기 뭐가 들어있는지 알 수있다~~ 떠드는데
클래스였으면 걍 ide 만 클릭해서 선언부 이동으로 알 수 있었을걸 코드 따라가서 이게 어디서 왔지?? 이래야됨
키값 뭐있었더라? 하면서 DB 스키마 한쪽에 띄워놓고 하는사람봄.
저기서 끝나면다행인데 얘는 그룹이 없을때가 있어서 그냥 if 로 체크하다가 뻑날까봐 저렇게 중간에 초기화를 해놨음
중간에 초기값 넣은게 참 바보 같은데 아마도 그누5를 만든 사람들은 귀찮기도하고
클래스 없는 코드들은 어느나라 개발자나 대체로 저런식임
결과적으로 isset 떡칠을 하고야 말게됨.
최악의 경우는 서드파티 개발자가 저 $group 배열에 임의의 키값을 추가해놓고 다른데서 사용하다가
if else if 어딘가에서 띡하고 추가해놓은거라 추적하다가 죽을맛이라는거임
그리고 php 배열은 그런게 한트럭.
php 코어 개발자들은(PHP VM 만드는 아조씨들) 클래스를 써라~ 거리고
클래스 싫은사람은 타입배열을 넣어달라고 난리나서
PHP 8 에 dataclass 를 따라하는 간소화된 클래스 속성문법이 나옴
이 또한 그누보드 코드를 깔수만 있다면 vs code로 그렙해서 해결 쌉가능한 문제잖노 이기 중간에 맵에서 키가 있는지 확인하고 넣는건 자바에서도 흔히 있는 문제다 이기야
map 아무때나 다 박아넣으면 끔찍해져 자바 si 아조씨들 그런코드 많이 써서 욕먹던데 ㅋㅋ 키이름 오타내서 버그 런타임에 터지고 <- 이것도 ㄹㅇ 끔찍
@피치피(183.101) 타입스크립트하는 애들이 okky 사이트에 map 아조씨들 싫어하던
@피치피(183.101) 게이는 순수황흐프 코드만으로 짜라 이기야 나도 그럴거다
다 필요없고 php 안씀 ㅇㅅㅇ
흔한 레거시 php 에 데여서 흑화한 모습