Home > Article > Backend Development > How to compare employee attendance data through PHP?
How to compare employee attendance data through PHP?
In terms of managing enterprise employee attendance, comparing employees' actual attendance data with preset attendance data is an important task. Through the PHP programming language, we can easily compare employee attendance data and perform corresponding processing and analysis. The following will introduce how to use PHP to compare employee attendance data and provide specific code examples.
First, you need to design a database to store employee attendance data and preset attendance data. Here, taking MySQL as an example, two tables are created: employee_attendance and preset_attendance.
The employee_attendance table is used to store employees’ actual attendance data and contains the following fields:
The preset_attendance table is used to store preset attendance data and contains the following fields:
First, connect to the MySQL database:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "attendance"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } ?>
Next , write a function to compare the actual attendance data of employees with the preset attendance data, and output the comparison results:
<?php function compareAttendance($employeeId, $date) { global $conn; // 查询实际考勤数据 $sql = "SELECT check_in_time, check_out_time FROM employee_attendance WHERE employee_id='$employeeId' AND date='$date'"; $result = $conn->query($sql); $row = $result->fetch_assoc(); // 查询预设考勤数据 $sql = "SELECT check_in_time, check_out_time FROM preset_attendance WHERE employee_id='$employeeId' AND date='$date'"; $result = $conn->query($sql); $presetRow = $result->fetch_assoc(); // 比对考勤数据 if ($row["check_in_time"] == $presetRow["check_in_time"] && $row["check_out_time"] == $presetRow["check_out_time"]) { echo "考勤数据匹配"; } else { echo "考勤数据不匹配"; } } // 示例调用函数 compareAttendance(1, "2022-01-01"); ?>
The above code will query the corresponding actual attendance in the database based on the incoming employee ID and date. data and preset attendance data, and then compare the punch-in time of the two. If there is a complete match, "Attendance data matches" is output, otherwise "Attendance data does not match" is output.
Through the above PHP code examples and database design, we can easily implement the comparison function of employee attendance data. In actual applications, the code can be further improved as needed, such as adding more comparison rules and attendance exception handling logic to meet specific business needs.
The above is the detailed content of How to compare employee attendance data through PHP?. For more information, please follow other related articles on the PHP Chinese website!