26.09.29
0
조회 130
26.09.26
1
조회 128
26.09.24
0
조회 153
26.09.23
0
조회 158
26.09.19
0
조회 476
26.09.11
0
조회 142
26.09.10
0
조회 134
26.09.10
0
조회 140
26.09.10
0
조회 109
26.09.10
0
조회 96
26.09.09
1
조회 91
26.09.04
0
조회 341
26.09.03
0
조회 335
26.09.01
1
조회 131
26.08.29
0
조회 169
26.08.22
0
조회 281
26.08.20
0
조회 310
26.08.13
0
조회 304
26.08.13
0
조회 352
26.08.13
0
조회 198
댓글 4
return $args 명령이 존재하는것 같습니다 (맞나요? ㅠㅠ)
트리거의 반환값이 중요한 경우는 오류를 뿜기 위해 BaseObject(-1, 에러메시지)를 반환할 때뿐입니다. 그 밖의 반환값은 모두 무시됩니다. 메모리 낭비 그 이상도 이하도 아닙니다.
moduleObject.proc 같은 곳에서는 BaseObject를 상속받은 ModuleObject가 넘어오기 때문에, 받았던 변수에 에러메시지를 추가하여 다시 반환할 경우 BaseObject로 인식할 수도 있습니다. 그러나 그냥 BaseObject를 만들어서 반환하면 될 것을 굳이 그렇게 복잡하게 할 필요도 없고, 아무튼 이런 특수한 경우를 제외하면 트리거의 반환값은 완전 무쓸모입니다. (심지어 대부분의 after 시점에서는 트리거가 에러를 반환하더라도 무시하고 계속 진행합니다. 트리거의 반환값을 코어에서 얼마나 철저하게 투명인간 취급하는지 알 수 있겠죠?)
트리거에서 $args를 조작하여 글 내용을 변경하는 등의 작업을 할 수 있겠지만, 이 때도 $args를 반환할 필요는 없습니다. 모든 오브젝트는 참조로 넘어오기 때문에 그냥 $args를 조작하기만 하면 원본에 반영됩니다. $args를 반환하는 코드를 제거하더라도 똑같이 작동할 것입니다.