tags:

views:

92

answers:

3

I have never developed for WAMP, the hosting guy for my new client says they are using Windows servers, they can setup PHP and MySQL for me, but they cannot switch to a *nix server.

He said there are some nuances from PHP on *nix Vs. win.

So my question is, if I have never programmed PHP on win, should I go through the hassle of switching hosts (since they cannot do *nix themselves), or are the differences slight enough that it shouldn't be too big a problem for me?

(side note: the state of the clients website has no effect since it is a static all-flash site and is going to be completely rebuilt)

Thanks!

+3  A: 

I would suggest XAMPP which is a complete LAMP package which will install on either Windows or Linux.

You can do all your development on your local machine this way.

Robert S. Barnes
+1 was just about to say the same.
Jacob Relkin
So if I ask the host to setup XAMPP for me, would I be able to develop exactly the same as I am used to, or do I need to watch out for differences? Thanks.
John Isaacks
If you have the funds for it, Zend Server guarantees your code will execute identically on windows and linux flavours (Zend Server runs on both)
Andy
You could The primary differences you would need to watch out for are in dealing with file paths. If you write any low level networking code you might also have to watch out for subtle differences in how *nix and WinBlowz implement the IP networking stack. Also, *nix and Windows use slightly different line termination characters, although this should really cause you any problems unless you're parsing text files. Other than that you should be OK.
Robert S. Barnes
A: 

I'd suggest to avoid windows hosting. There is no much difference for the PHP as it already multiplatform, but windows is not an option for the public host. Less performance, less security, less operability.

Also, note that they never administer php installation, so, it will be trouble in support.

Col. Shrapnel
+1  A: 

Edit to address the actual question: Before bringing this up with the client, here are some things to consider:

  • What is your relationship with the client? Is this a one project deal, or do you hope to continue working for them? Either way, do you want to get a good reference from them? Are you a long established service provider with a high level of trust, or a new face who has yet to prove themselves? How would they respond if you suggest that they change? Would they mind switching web hosts?
  • How comfortable are you working with Windows in general? Can you can use it with moderate skill and comfort?
  • What is your time frame for project completion? How long would it take to find a new hosting service and get set up? How will this impact your scheduled completion?

Ultimately, if you decide to raise the issue, the client has to decide whether they want to move to a new hosting company. Some factors to consider there include:

  • How long have they been with this host? How good or bad is the relationship between your client and their hosting company. What contractual obligations are in place between them? Would your client have to pay to leave?
  • After you finish the initial development, who is going to maintain and administer the system (you or someone at the client company), and which system do they know?

Now, if you want to use Windows, I'll mention that, in addition to XAMPP, the WAMP server, which will run on just about any modern version of Windows. I used it for a class (where it was required), and then on a development system for a project at work that ultimately ran on a Linux server. Both ran Windows XP. I don't recall needing to make any changes when copying the PHP from Windows to Linux, although I did stay away from any functions which would have been platform dependent. FWIW, I found WAMP very easy to set up, administer, and use.

GreenMatt
Is there a list somewhere of which functions "are" platform dependent?
John Isaacks
@John: I don't know of one, but I'm no PHP guru - I only used it for a class, one moderate sized work project, and a few small personal/volunteer sorts of things. I just steer clear of anything where the documentation says it's dependent, or something that looks like it may be a problem.
GreenMatt