RewriteEngine On

# remove .php extension
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^\.]+)$ $1.php [L]

# hide .php from URL
RewriteCond %{THE_REQUEST} \s/+(.+?)\.php[\s?]
RewriteRule ^ %1 [R=301,L]