tags:

views:

207

answers:

1

I have a PHP script that doesn't seem to work when it contains a // type comment. I mean, the script just doesn't seem to execute beyond the // style comment. E.g.

<?php header('Content-type: text/plain');

// some comment
echo "OK";

doesn't work, no output. but:

<?php header('Content-type: text/plain');

echo "OK";

does work. I see OK as output. And:

<?php header('Content-type: text/plain');

/* some comment */    
echo "OK";

Also works. Again I see OK as output.

I never encountered this before. Could there be any PHP settings that control this behavior? How do I make my // style comments work?

+4  A: 

What kind of platform are you on and which editor are you using? Because the only thing I can think of is that the interpreter doesn't like your newlines. Are you using Apple style (\r only) newlines?

I'm not able to reproduce your problem on PHP 5.2.9-4 running on Linux, not with Mac encoding either.

Just to be sure, have you tried adding a closing tag after the echo statement? (?>). Otherwise, add that now and see if it makes a difference.

Thorarin
Possibly, UNIX newlines on a Windows system may also cause a problem (if the Windows interpreter needs to see \r\n and it only get \n).
paxdiablo
The closing tag is optional (see http://docs.php.net/manual/en/language.basic-syntax.instruction-separation.php).
Gumbo
@Gumbo: Oh, didn't use to be though, as far as I know... goes to show how long it's been since I've done serious PHP work.
Thorarin