Это код, который я использую,
<IfModule mod_rewrite.c>
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^/]+)/?([^/]+) index.php?user=$1&do=$2 [L]
</IfModule>
если я дам ему abcd/1234
, сначала будет записано abcd
, затем 1234
в качестве второй переменной. Но если URL был abcd/
или abcd
, то первый захват остается прежним, а второй захват становится d
. Это не вызовет никаких проблем в самом коде php, но будет более эффективным, если он не был захвачен в первую очередь.
о, чтобы уточнить, ни первый, ни второй захват не требуются для страницы index.php. Но изменит свое назначение, если они существуют.
любая помощь с кодом регулярного выражения была бы признательна, и если есть какие-либо способы улучшить ее или написать более эффективно, я был бы очень рад узнать!
Большое спасибо:)
я использую этот инструмент http://gskinner.com/RegExr/, чтобы проверить это.