我刚开始玩php。我的第一个脚本工作正常:
<?php
echo "hello";
?>
当我需要以下外部php文件时,结果很奇怪:
<?php
require "gloo.php";
echo "hello";
?>
gloo.php包含一行文字:
$foo="foo1";
当我运行脚本时,浏览器会显示gloo.php的内容:
$富= “foo1” 你好
好像我输入了
echo "$foo='foo1'hello"
我做错了什么?谢谢你的帮助!
答案 0 :(得分:2)
gloo.php包含一行文字:
$foo="foo1";
此文件还需要<?php
和?>
标记。从你说的方式“包含一行文字”我认为不在那里。顺便说一下,结束?>
标签是可选的。
答案 1 :(得分:2)
当PHP解析文件时,它会查找开始和结束标记,它们是<?php
和?>
,它们告诉PHP开始和停止解释它们之间的代码。以这种方式解析允许PHP嵌入到各种不同的文档中,因为PHP解析器会忽略一对开始和结束标记之外的所有内容。
PHP还允许使用短标签<?
和'?&gt;`(不鼓励它们,因为它们只有在使用short_open_tag php.ini配置文件指令启用时才可用,或者如果PHP配置了--enable -short-tags选项。
如果文件是纯PHP代码,则最好省略文件末尾的PHP结束标记。这可以防止在PHP结束标记之后添加意外的空格或新行,这可能会导致不必要的影响,因为当程序员无意在脚本中发送任何输出时,PHP将启动输出缓冲。
<?php $foo="foo1";
是最终结果。
来自php.net手册。
答案 2 :(得分:1)
即使您包含的文件也需要PHP代码块。
<?php
...
答案 3 :(得分:1)
“gloo.php”:
<?php
$foo = "foo1";
?>
不要忘记php;)
答案 4 :(得分:1)
在 gloo.php 中,内容是否包含在PHP标记内? .php文件中PHP标记之外的任何内容都被解析为HTML。
示例 - gloo.php;
<?php
$foo = "foo1";
?>
除非您明确调用变量 $ foo
,否则不会显示任何内容你也可以省略结束标记,并且它实际上是由许多开发人员推荐的,因为它在开发应用程序或php项目时排除了与空白有关的任何问题。 (这可能是一个问题)