php refactoring v1