fix compatible with php 5.3