http://php.net/manual/en/function.array-push.php
If you take a look at the documentation of array_push it actually modifies the first parameter and only returns the number of new elements in the array.
What you're trying to do is make a copy of the required_fields array and then add some new elements. You can use the array_merge function to get this done.