DeathRay2K Posted January 10, 2006 Share Posted January 10, 2006 I made a simple function to check a filename to see if there was |Category, |Subcategory, or something else, but nearly everyy line is generating errors... 11 function whatis($name){12 $checktype = explode('|', $name);13 $checkfile = explode('.', $name);14 if(count($checktype) >=2 && $checktype[1] == 'Category')15 return 'Category';16 elseif(count($checktype) >=2 && $checktype[1] == 'Subcategory')17 return 'Subcategory';18 elseif(count($checkfile) <= 3)19 return 'File';20 else21 return 'Undesirable';22 } I wrote the line number before each line... This error starts at line 14, but even if I remove everything in the if statement after >=2, line 15 errors:Parse error: parse error, unexpected T_STRING in /my/website/foo/bar/script.php on line 14 Link to comment Share on other sites More sharing options...
hacknsack Posted January 10, 2006 Share Posted January 10, 2006 Don't see anything out of place.Maybe you have an escaped quote or something before the function.No warnings or errors with your function: <?php function whatis($name){ $checktype = explode('|', $name); $checkfile = explode('.', $name); if(count($checktype) >=2 && $checktype[1] == 'Category') return 'Category'; elseif(count($checktype) >=2 && $checktype[1] == 'Subcategory') return 'Subcategory'; elseif(count($checkfile) <= 3) return 'File'; else return 'Undesirable'; } $str = "One|Category|Three";echo "<p>". whatis($str) ."</p>";$str = "One|Subcategory|Three";echo "<p>". whatis($str) ."</p>";$str = "One.Two.Three";echo "<p>". whatis($str) ."</p>";$str = "One.Two.Three.Four.Five";echo whatis($str);?> You will have to keep looking for the culprit.I guess you have already tried commenting blocks of your code. Link to comment Share on other sites More sharing options...
DeathRay2K Posted January 10, 2006 Author Share Posted January 10, 2006 Yes, that's how I noticed that the error just moves to the next line when I comment strings out...And unfortunately there are no problems like that in my script, they'd be easy to fix...I also tried changing it to this: 11 function whatis($name){12 if(substr_count($name, '|Category')>0)13 return "Category";14 elseif(substr_count($name, '|Subcategory')>0)15 return "Subcategory";16 elseif(is_file($name))17 return "File";18 else19 return "Undesirable";20 } But then instead of an unexpected T_STRING I get unexpected T_CONSTANT_ENCAPSED_STRING on line 14...Maybe it doesn't like | in a string? But that doesn't make much sense... :(Edit:Wait, I did, in fact have an escaped quote! Thanks for the help! Link to comment Share on other sites More sharing options...
hacknsack Posted January 10, 2006 Share Posted January 10, 2006 Glad it was helpful for you, Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now