簡體   English   中英

一個PHP include()函數,結果奇怪

[英]a PHP include() function with a strange outcome

我是最近才開始學習PHP的,遇到了一個令人沮喪的問題,即代碼看起來不錯,但它根本無法工作,即使是教我的人也不知道是什么原因造成的。 下面,我將我的代碼粘貼到您身上。

<?php
header("content-type: text/html; charset = UTF-8");
$con = new mysqli();
$con -> connect("localhost", "root" ,"");
$con -> select_db("test_db");
$con -> query("set names UTF8");
$query = $con -> query("SELECT * FROM TITLES LIMIT 0,2");
$num = $query -> num_rows;
for ($i=1 ; $i <= $num; $i++) 
{ 
    $result = $query -> fetch_array();
    echo "<table style ='float: left'>";
    echo "<tr><th>".$result["TITLE"]."</th><tr>";
    echo "<tr><td>";
    include("$i.php");
    echo "</td></tr>";
    echo "</table>";
}
?>

結果變成這樣:

在此處輸入圖片說明

順便說一句,我在MAC中使用XAMPP 7.0.1。

<?php
header("content-tupe: text/html; charset = UTF-8");
$con = new mysqli();
$con -> connect("localhost", "root" ,"");
$con -> select_db("test_db");
$con -> query("set names UTF8");
$query = $con -> query("SELECT * FROM PHP_MANUAL LIMIT 0,6");
?>
<ul>
<?php
  while ($result = $query -> fetch_array()) 
  {
      echo "<li>".$result["CONTENT"]."</li>";
  }
?>
</ul>
<?php
header("content-type: text/html; charset = UTF-8");
$con = new mysqli();
$con -> connect("localhost", "root" ,"");
$con -> select_db("test_db");
$con -> query("set names UTF8");
$query = $con -> query("SELECT * FROM TITLES LIMIT 0,2");
$i = 0;
while($result = $query -> fetch_assoc())
{ 
    $i++;
    echo "<table style ='float: left'>";
    echo "<tr><th>".$result["TITLE"]."</th><tr>";
    echo "<tr><td>";
    include("$i.php");
    echo "</td></tr>";
    echo "</table>";
}
?>

使用while循環瀏覽行。

當您將文件包含在另一個PHP文件中時,包含的文件中的所有變量將處於活動狀態,並且可以進行操作。

在您的情況下,您正在使用$ query和$ result變量來覆蓋您啟動的變量。 因此,TITLES的$ query已更改,因此即使您要使用unset()也不起作用。

示例:基本包含示例

vars.php

<?php

$color = 'green';
$fruit = 'apple';

?>

test.php

$color = 'yellow';
$fruit = 'banana';

echo "A $color $fruit"; // A yellow banana

include 'vars.php';

echo "A $color $fruit"; // A green apple

?>

來源: http//php.net/manual/en/function.include.php

另外,您可能希望將$ con變量放入一個單獨的PHP文件中並包含一次。 閱讀有關PHP的更多信息,包括:

http://php.net/manual/zh/function.include-once.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM