PHP 4.0 Bug #8579 Updated: text files do not have \r\n translation from \n

From: Date: Fri, 26 Jan 2001 00:22:57 +0000
Subject: PHP 4.0 Bug #8579 Updated: text files do not have \r\n translation from \n
Groups: php.dev 
Request: Send a blank email to php-dev+get-45025@lists.php.net to get a copy of this message
ID: 8579 Updated by: joey Reported By: dpfender@innova.net Status: Open Old-Bug Type: Feature/Change Request Bug Type: Filesystem function related Assigned To: Comments: Cynic pointed out that I was misreading this bug report. PHP's fwrite doesn't seem to do the same translation that C does on windows boxes. Previous Comments: --------------------------------------------------------------------------- [2001-01-25 18:37:36] joey@php.net This is not really a bug. PHP emulates C in this, as it does in many other things. It seems that in the opinion of most of the developers, this is a Good Thing (tm). Reclassify as a Change Request. --------------------------------------------------------------------------- [2001-01-08 20:33:05] dpfender@innova.net The problem is not with fopen(file, "wb"), which works correctly. The problem is with fopen(file, "w") because it works the same as the "wb" option. Using the "w" option should cause any text to be translated from 'n' to 'rn' on Windows systems or else text editors such as Notepad will not view the file correctly. --------------------------------------------------------------------------- [2001-01-08 14:04:13] stas@php.net fopen uses whatever mode you give it. The rest of functions (like "system") use 'b' modes, since they are meant to pass the data unchanged. If you have a code that uses fopen and it ignores 'b', please reopen the report and post the code, otherwise - you are getting the intended behaviour. --------------------------------------------------------------------------- [2001-01-07 14:11:54] dpfender@innova.net C programs that execute on Windows systems use fopen() with a "b" mode option (example, fopen(fname,"wb")) when the output string is to be written exactly as is to the file. When opened with "w", the 'n' character is automatically translated to the sequence 'rn'. This character sequence defines the end of lines to Windows-based text programs, such as Notepad. This capability is not supported with PHP though the documentation hints that it should. Without this feature, PHP programs are not directly portable between Windows systems and Unix/Linux systems without a lot of special program coding on the part of the developer. --------------------------------------------------------------------------- Full Bug description available at: http://bugs.php.net/?id=8579

« previous php.dev (#45025) next »