Lets take the first line:
124.115.5.11 - - [30/May/2011:23:21:37 -0500] "GET / HTTP/1.0" 200 206492 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322;TencentTraveler)"
 and the crucial part of the awk snippet:
awk '{ split($4,array,"/") ...
Here what is happening:
- awkruns and splits the line on the spaces (default field separator)
- 4th field in the line is additionally being split on- /character
-  the result of the split is put into the array
-  later on the whole line is printed to the file named as a second subfield (array[2]) of the 4th field
 so $4 field initially contained [30/May/2011:23:21:37, and after split we have
array[1]=[30
array[2]=May
array[3]=2011:23:21:37
 There is no array[4], because there the 4th field doesn't contain 4th "subfield" and there is no array[0] because in awk array indexes start from 1.