Quoting [the manual]:
> When PHP parses a file, it looks for opening and > closing tags, which tell PHP to start and stop > interpreting the code between them. Parsing in this > manner allows php to be embedded in all sorts of > different documents, as everything outside of a pair > of opening and closing tags is ignored by the PHP > parser. Most of the time you will see php embedded in > HTML documents […]
So a document like the following **is not PHP**:
$var i = 42;
You **must** enclose that code in `<?php … ?>`. Even when you have a document like the following:
<?php include 'myclass.inc' ?>
The `myclass.inc` include file **is still HTML**, again [quoting the PHP manual]:
> When a file is included, parsing drops out of PHP > mode and into HTML mode at the beginning of the > target file, and resumes again at the end. For this > reason, any code inside the target file which should > be executed as PHP code must be enclosed within valid > PHP start and end tags.
For this reason we designed the HTML grammar to handle `<?php … ?>` tags and correctly switch to PHP mode when these tags are seen, as they are mandatory, and almost always found within HTML documents (which embed PHP).
We did **not** design PHP to be used as a stand-alone language, because from the above quotes, it is **not** a standalone language. It is **always** embedded into something else, and 99% of the time, that _something else_ is HTML.