php adaption