簡體   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