2014-03-13 51 views
-3

我正在编码这与PHP和HTML的混合物,但我似乎无法理解为什么我得到一个eof,但当我排除中间的PHP部分,它工作得很好。我似乎无法理解为什么它给了我一个错误。我将其与我的程序的另一部分进行了比较,当我看了一个类似的页面,它的工作原理,但这只是给我一个意想不到的eof为什么我得到一个意外的eof?

这是代码。有什么建议么?

<!DOCTYPE html> 
<?php 
    require_once("data.php"); 
    error_reporting(0); 
?> 

<html> 
<head> 
    <link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css"> 
</head> 
<body> 
    <div class="container"> 
     <div class="page-header"> 
     <h1>Course Listings</h1> 
     </div> 
     <table class="table"> 
     <?php 
     foreach($data as $value ) 
     { 
     ?> 
     <tr> 
     <td><a href="course.php"> <? $value[number] ?> </a></td> 
     <td> <? $value[name] ?> </td> 
     <td> <? $value[instructor] ?> </td> 
     </tr> 
     <? 
      }; 
     ?> 
     </table> 
    </div> 
<script src="http://code.jquery.com/jquery.min.js"></script> 
</body> 
</html> 
+3

最有可能是因为'};中的分号 - 将其删除。 –

+0

您是否启用短标签?否则你需要在任何地方使用

+2

也可能'<?'应该是'<?=' – bansi

回答

1

您的foreach的右括号没有被处理,因为短标记将被禁用。这会导致意外的eof,因为php仍然期待一个右括号。

无处不在使用标准标签<?php

0

Fred-ii很有可能在他的评论中是正确的。如果这不能完全解决它,请用您的内容替换您的<table>内容,看看它是否有效。正如其他人所提到的,你可能有一个问题与<?=

<table class="table"> 
<?php foreach($data as $value): ?> 
<tr> 
<td><a href="course.php"> <?php echo $value['number']; ?> </a></td> 
<td> <?php echo $value['name']; ?> </td> 
<td> <?php echo $value['instructor']; ?></td> 
</tr> 
<?php endforeach; ?> 
</table> 
相关问题