I prefer /product/ to product.php.
Why? Because it is not file dependent. What if you want to change the file name? Or temporarily use another page for a promotion? Because you could, assuming Apache, change which file is the default page using .htaccess, you can simply and quickly create an .htaccess page in the /product/ directory to point to any page you want as the default to override the sites .htaccess file.
You get a bit more flexibility.
Why else? Because paths hold more semantic value, they generally help search. Each URL is divided into parts from left to right. For example, domain name, path, file name, and parameters. From left to right, each URL part yields more semantic weight. And while semantic value between the path and file may not be terribly much, it is still far more helpful to give semantic meaning to the path especially in light that the file name would yield very little value in of itself. The primary reason for this is because the path has more words and the file name has only one word. That said, the path and file name is understood to have a relationship still. So using product.php is not bad, however, using /product/ is better.
As a side note, I like the idea of having the article follow the category and product. If you use something like /top ten uses for the whizzy wigg widget/, this should be supported by the category name and product name in semantic search value.