我有一份课程清单以及学生参加这些课程所需的时间。课程如下:
CON8101 Residential Building/Estimating 16 hrs/w
CON8411 Construction Materials I 4 hrs/w
CON8430 Computers and You 4 hrs/w
MAT8050 Geometry and Trigonometry 4 hrs/w
我已经使用这个 RegEx 来提取课程名称和每门课程每周花费的时间。有4门以上的课程,4门是上面的例子。可以有多达50门课程。
$courseHoursRegEx = "/\s[0-9]{1,2}\shrs/w/";
$courseNameRegEx = "/[a-zA-Z]{3}[0-9]{4}[A-Z]{0,1}\s?/[a-zA-Z]{3,40}/";
并应用以下函数(不确定是否 100% 正确)来提取 RegEx 字符串。使用 $courseLine 是我从早期打开的文本文档中保存每一行的字符串的变量。它跟踪从字符串中提取的总小时数。
$courses 是用户在 html 部分中输入的复选框数组
$totalHours += GetCourseHours($courseLine);
function GetCourseHours($couseLine)
{
if(!preg_match($courseHoursRegEx, $courseLine))
{
return $courseLine;
}
}
function GetCourseName($courseLine)
{
if(!preg_match($courseNameRegEx, $courseLine))
{
return $courseLine;
}
}
我使用了一个 foreach 循环来输出所有选定的课程,以便在表格中进行排序。
foreach($courses as $course)
{
$theCourse = GetCourseName($course);
$theHours = GetCourseHours($course)
}
编辑:输出代码
for($i = 1; $i <= $courses; ++$i)
{
printf("<tr><td>\$%.2f</td><td>\$%.2f</td></tr>", $theCourse, $theHours);
}
我不确定如何将我拥有的内容输出到按课程名称和每门课程的小时数组织的动态表中。我无法让我的页面运行,我找不到任何语法错误,我担心这是我的逻辑。