I don't think it's possible to find a solution from what you posted. Do you get any error message when running on the Linux server?
Many newer Linux distros turn off PHP error reporting by default for security reasons. But you can look in Apache's error log to see if there is something. Another option is to add this somewhere in the beginning of your code:
When something works on some platforms but not on others, it's usually because some setting in php.ini or that you are missing a PHP module.
Another problem is that filenames are case sensitive on Linux and not on Windows.
Anyway, an error message should give you a clue about the problem.