125369
125369

Reputation: 3657

How to deal with whitespace in the path of the root folder

I wrote a PHP script on my local server which needs to include path for the file where I need to write contents to the file using file_put_contents which was working without any problem on the localhost. I moved the files to the webserver where it has been configured with the path which has spaces in between for ex: C:\Program File (xxx)\Apache Software Foundation\Apache2.2\htdocs\writtencode\writefile\

When I try to open the folder writefile to write the contents to temp_1.cfg file in that folder it pops up the error

Warning: file_put_contents(C:\ProgramFile(xxx)\ApacheSoftwareFoundation\Apache2.2\htdocs\writtencode\writefile\temp_1.cgf) [function.file-put-contents]: failed to open stream: No such file or directory in C:\Program File (xxx)\Apache Software Foundation\Apache2.2\htdocs\writtencode\writefile\index.php

Any idea how to remove or tackle with the problem of spaces in the path when writing contents to the file using file_put_contents?

Upvotes: 1

Views: 4987

Answers (2)

Nick Baluk
Nick Baluk

Reputation: 2275

$path ="C:\ProgramFile(xxx)\Apache Software Foundation\Apache2.2\htdocs\writtencode\writefile\temp_1.cgf";
file_put_contents($path = str_replace(' ', '\ ', $path));

Upvotes: 5

Andy  Gee
Andy Gee

Reputation: 3345

Have you tried enclosing the path in quote marks? Also you may need to escape all backslashes so:

file_put_content(C:\ProgramFile(xxx)\ApacheSoftwareFoundation\Apache2.2\htdocs\writtencode\writefile\temp_1.cgf);

becomes:

file_put_content('C:\\ProgramFile(xxx)\\ApacheSoftwareFoundation\\Apache2.2\\htdocs\\writtencode\\writefile\\temp_1.cgf');

Upvotes: 0

Related Questions