An OAuth2 access token is valid for something like an hour; if you use this you won't need to get a new one for each insert. The PHP client should manage the token and request a new one when it expires.
The other alternative is to use service account or PKS#12 auth. This requires signing your requests, but it doesn't require an access token at all. See the docs here. The examples are in java and python, but the python one should be relatively easy to translate to PHP.