Jump to content

Problem with For Each statement used with preg match


rlb1

Recommended Posts

How do I fix this For Each statement when used with preg match?

 

//Cat_ID  &  Category Name

preg_match_all('%<a[^href=]*href=\"\/cats\.asp\?cat_id=(.*?)\" title="(.*?)">%',$data,$matches1,PREG_SET_ORDER);  // works fine 

preg_match_all('%/60/(.*?).jpg"%s',$data,$matches2,PREG_SET_ORDER); // works fine

preg_match_all('%h3><p>(.*?)<\/p>%s',$data,$matches3,PREG_SET_ORDER); // works fine

 

foreach ($matches1 as $val) {        //need help here

$subcat_id=$val[0][1];

$subcat=$val[0][2];

$cat_image=$val[1][1];

$cat_desc=$val[2][1];

 

 

 

Thanks for your help!!!

You could use print_r to see the contents of $matches1, which will give a hint to the data that's in it and how you should iterate through.  The manual also shows how to iterate through:

 

http://www.php.net/manual/en/function.preg-match-all.php

 

That said, if the patterns are all related to each other (ie. the category ID and image name are one record) they should probably be in one call to have them together in a single $matches var?

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.