繁体   English   中英

(if)语句在从另一个php文件中包含时不起作用

[英](If) statement not working when including it from another php file

我有两个php文件,第一个是sample.php ,第二个是if.php 我在sample.php写了一些代码,基本上声明了两个变量和一个else语句。 我在if.php文件中有if语句,要在else语句之前包括它。 但是在运行我的代码时会显示错误:

意外的“其他” ...等。

您能帮我弄清楚代码出什么问题吗?

Sample.php

<?php
$a=10;
$b=20;

include 'if.php';
else
{
echo $b.' is greater';
}
?>

if.php

<?php
if($a>$b)
{
echo $a.' is greater';
}
?>
include 'if.php';
else

尼斯,有没有这样的事情include else 即使在包含文件的末尾有一个if子句, includeif中断其顺序。

else只能在ifelse if块之后,没有第三个选项。 期。

这是PHP解析器将如何查看您的2个文件的方法

if($a>$b){
  echo $a.' is greater';
}
include "if.php";
else {
  echo 'na';
}

这显然是无效的。

如果您仍然想保持现状,就像您在评论中提到的那样。 您可以做1个小技巧(在许多其他方法中)。 让你的else另一if这是违反第一if 喜欢

if.php

if($a>$b){
  echo $a.' is greater';
}

主文件

include "if.php";
if($a<=$b) {
  echo 'na';
}

include(或require)语句获取指定文件中存在的所有文本/代码/标记,并将其复制到使用include语句的文件中。

当您要在网站的多个页面上包含相同的PHP,HTML或文本时,包含文件非常有用。

include和require语句相同,但失败时除外:

  • require将产生致命错误(E_COMPILE_ERROR)并停止脚本
  • 包含只会产生警告(E_WARNING),脚本将继续。

因此,即使您希望执行继续进行并向用户显示输出,即使缺少包含文件,也可以使用include语句。 否则,对于FrameWork,CMS或复杂的PHP应用程序编码,请始终使用require语句在执行流程中包括密钥文件。 这将有助于避免损害应用程序的安全性和完整性,以防万一意外丢失一个密钥文件的情况。

包含文件可节省大量工作。 这意味着您可以为所有网页创建标准的页眉,页脚或菜单文件。 然后,当标题需​​要更新时,您只能更新标题包含文件。

footer.php

<?php
echo "<p>Copyright &copy; 1999-" . date("Y") . " W3Schools.com</p>";
?>

index.php

<!DOCTYPE html>
<html>
<body>

<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
<?php include 'footer.php';?>

</body>
</html>

实时预览

来自PHP 5包含文件的

所以你的代码看起来像这样

if($a>$b)
{
  echo $a.' is greater';
}
include "if.php";
else 
{
  echo 'na';
}

简直是完全错误的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM