Jump to content

preg_match help


skwap

Recommended Posts

Friends.

 

i have a problem while using preg_match() function. My aim is to match the value of n from this url

index.php?n=100&img=1

 

i used this code

 

$url = "index.php?n=100&img=1";
preg_match('/\index.php?n=(.*?)&img/si',$mid,$url);
print_r($mid);

 

after executing above code the code did not print the matched array values. Its printing just like this Array()

i want to print the matched value of n from my url.

 

 

Anyone can help me to match the value ? & please correct my code.

 

Thanks In Advance

Link to comment
https://forums.phpfreaks.com/topic/246158-preg_match-help/
Share on other sites

seems like you have your arguments switched.. the second argument should be the subject that your pattern applies to, and the third argument will be the array of matches...

 

preg_match('/\index.php?n=(.*?)&img/si',$url,$mid); //switch $mid and $url

Link to comment
https://forums.phpfreaks.com/topic/246158-preg_match-help/#findComment-1264228
Share on other sites

If the value of n is always going to be a number, you might as well put that in your pattern. Also, can you ever have a page where the value of n is nothing? If not, that may as well be in your pattern by using a plus instead of a star.

 

preg_match('/\index.php?n=([0-9]+?)&img/si',$url, $mid); //assuming n is always a number

 

P.s. I think you had the $url and the $mid the wrong way round too ;D

Link to comment
https://forums.phpfreaks.com/topic/246158-preg_match-help/#findComment-1264340
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.