merge patch from thinkphp