我正在使用PHP和HTML的混合编码,但我似乎无法理解为什么我得到一个eof但当我排除中间的PHP部分时,它工作得很好。我似乎无法理解为什么它会给我一个错误。我将它与我的程序的另一部分进行了比较,当我查看类似的页面时,它可以工作,但这个只是给了我一个意想不到的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>
答案 0 :(得分:1)
由于禁用了短标记,因此未处理foreach的结束括号。这会导致意外的eof,因为php仍然需要一个结束括号。
在任何地方使用标准标记<?php
。
答案 1 :(得分:0)
<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>