2011-06-04 1 views
1

после 10 лет с PHP я до сих пор S *** в регулярных выражениях, не могли бы вы мне помочь преобразовать этотsplit to preg_split?

$x_ary=split('&x=',$url); 

в preg_split эквиваленте?

Спасибо

+0

извините, но почему вы хотите разделить URL вместо того, чтобы получать его, используя либо сообщение, либо сообщение или запрос? – Prix

+0

Его ссылка пользователя вводит/читает из базы данных –

+0

@Prix: предположительно, потому что это не URL текущей страницы. Но вы все еще можете разобрать его с помощью [parse_url] (http://php.net/manual/en/function.parse-url.php), а затем [parse_str] (http://php.net/manual/en/function .parse-str.php). – bobince

ответ

3

В большинстве случаев вам просто нужно добавить delimiters:

preg_split('/&x=/',$url) 

/ хороши, если вам не нужно их как часть шаблона. И ни один из других символов не является метасимволом, поэтому не требуется экранирование.

Обратите внимание, что в вашем случае вы можете просто использовать explode, так как вам не нужно регулярное выражение.

+0

'explode' действительно может быть лучше подходит здесь. это определенно лучшая производительность, если вы не делаете ничего сложного ... это намного быстрее, чем PCRE. – damianb

+0

+1 за предложение взрыва (подумайте вне вопроса) – Michael

+0

Возможно, даже OP мог бы быть заинтересован в ['parse_str'] (http://php.net/parse_str). – mario