php 5.3 compatibility