如何生成可执行的本地数据库数据调用代码?解决代码仅打印不执行问题
解决PHP循环中生成代码仅打印不执行的问题
你当前的代码只是把add_event的调用代码以字符串形式输出,并没有实际执行这个方法。要直接执行,只需要在循环里直接调用方法并传入数据库查询到的参数,而不是用echo输出代码字符串。
修改后的完整代码
<?php include('Calender.php'); $calendar = new Calendar(); // 示例调用 $calendar->add_event('test1','25-1-2025',3,'red'); require_once('Eventdb.php'); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { // 对字符串参数进行转义,避免单引号导致语法错误 $label = addslashes($row["label"]); $color = addslashes($row["color"]); // 拼接日期格式:日-月-年 $date = "{$row["date"]}-{$row["month"]}-{$row["year"]}"; // 直接调用方法,而非输出代码 $calendar->add_event($label, $date, $row["day"], $color); } } ?>
关键说明
- 移除了所有用于输出代码的
echo语句,直接调用$calendar->add_event()方法 - 使用
addslashes()处理字符串参数(比如label和color),避免字段中包含单引号时破坏PHP语法 - 用字符串拼接生成正确的日期格式,确保和示例调用的格式一致
内容的提问来源于stack exchange,提问作者Sittipruk Puttisarn
相关产品推荐
相关产品推荐

