# Запускаем движок замены
RewriteEngine on
# Если запрашиваемый объект не папка
RewriteCond %{REQUEST_FILENAME} !-d
# если запрашиваемый объект с дописанным расширением php - файл
RewriteCond %{REQUEST_FILENAME}\.php -f
# делаем замену с дописыванием .php
RewriteRule ^(.*)$ $1.php
RewriteEngine on
RewriteCond %{THE_REQUEST} "^GET /(somepage)\.php(?:.*?[?&]id=(\d+)|)"
RewriteRule ^ /%1/%2? [R=301,L]
RewriteRule ^(somepage)/(\d+)$ /$1.php?id=$2 [L]