Dizeleri karşılaştırmak ve değişkenleri ayıklamak?

0 Cevap php

Birisi bunu nasıl yapacağını söyleyebilir. I 3 dizeleri var.

$route = '/user/$1/profile/$2';
$path = '/user/profile/$1/$2';
$url = '/user/jason/profile/friends';

Ne yapmam gereken url rotaya uygun olmadığını görmek için kontrol edin. Ben aşağıdaki gibi yapmaya çalışıyorum.

$route_segments = explode('/', $route);
$url_segments = explode('/', $url);

$count = count($url_segments);
for($i=0; $i < $count; $i++) {
  if ($route_segments[$i] != $url_segments[$i] && ! preg_match('/\$[0-9]/', $route_segments[$i])) {
    return false;
  }
}

Ben şimdiye kadar kendim yazdım ilk var, regex işleri üstlenecek. : D

Ben şaşırıp yerdir. Nasıl şu dizeleri karşılaştırmak yapın:

$route = '/user/$1/profile/$2';
$url = '/user/jason/profile/friends';

Yani ile sonuna kadar:

array (
    '$1' => 'jason',
    '$2' => 'friends'
);

Ben bu dizi ile Sonra $ yol değişkeni içine bu değerleri str_replace olabileceğini varsayıyorum?

0 Cevap