This is a discussion on How can I preserve leading white space? within the alt.comp.lang.php forums, part of the PHP Programming Forums category; This simple example: <?php $str=" now, after all the spaces some text"; echo $str; ?> prints: now, ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
This simple example:
<?php $str=" now, after all the spaces some text"; echo $str; ?> prints: now, after all the spaces some text However, I want to preserve white space, so it prints the leading spaces. now, after all the spaces some text Can anyone suggest how to do it? My actual program (rather than that simple example) prints stdout from an executable program after the output is opened with popen, read with fgets and printed with echo - see below. But I think the problem is the same as in the above simpler code. <?php $cmd=$_POST['input_data']; // Read from a form. $handle = popen("echo $cmd | /usr/local/bin/math" , "r"); $data=fgets($handle); echo "$data<br>"; ?> -- Dave K http://www.southminster-branch-line.org.uk/ Please note my email address changes periodically to avoid spam. It is always of the form: month-year@domain. Hitting reply will work for a couple of months only. Later set it manually. The month is always written in 3 letters (e.g. Jan, not January etc) |
|
|||
|
On Tue, 22 Nov 2005 04:52:55 +0000, Dave
<INVALID.See-signature-for-how-to-determine@southminister-branch-line.org.uk> wrote: >This simple example: > ><?php >$str=" now, after all the spaces some text"; >echo $str; >?> > >prints: > >now, after all the spaces some text > > >However, I want to preserve white space, so it prints the leading spaces. > > now, after all the spaces some text > >Can anyone suggest how to do it? > >My actual program (rather than that simple example) prints stdout from >an executable program after the output is opened with popen, read with >fgets and printed with echo - see below. But I think the problem is the >same as in the above simpler code. > ><?php > >$cmd=$_POST['input_data']; // Read from a form. > >$handle = popen("echo $cmd | /usr/local/bin/math" , "r"); >$data=fgets($handle); >echo "$data<br>"; >?> How do you know the spaces are not still there? In HTML you will see only one space, no matter how many spaces may be in the source. Do a str_replace (" ", " ", $data); |
|
|||
|
> However, I want to preserve white space, so it prints the leading spaces. HTML to the rescue! Wrap your output in tags that preserve the layout: print "<pre>\n"; $handle = popen("echo $cmd | /usr/local/bin/math" , "r"); $data=fgets($handle); echo "$data"; print "</pre>\n"; --- Steve |
|
|||
|
Steve wrote:
>>However, I want to preserve white space, so it prints the leading spaces. > > > HTML to the rescue! Wrap your output in tags that preserve the layout: > > print "<pre>\n"; > Thank you - me being a total idiot. I should have realised that myself. -- Dave K http://www.southminster-branch-line.org.uk/ Please note my email address changes periodically to avoid spam. It is always of the form: month-year@domain. Hitting reply will work for a couple of months only. Later set it manually. The month is always written in 3 letters (e.g. Jan, not January etc) |