Я создал простое мобильное приложение, используя React Native, и для источника данных я создал простой API в PHP, который извлекает данные с веб-сайта и предоставляет их пользователям.Теперь я хотел добавить функцию уведомлений в свое приложение, и для этого мне всегда нужно знать, какие данные были обновлены, я решил эту проблему, сохранив свои данные в двух разных таблицах в моей БД и затем сравнив изменения, что занимает много времени.процедура и не очень эффективная на мой взгляд.Весь мой предыдущий код был написан на чистом PHP без использования каких-либо фреймворков.Теперь я хотел внедрить весь свой проект в бэкэнд на основе Laravel и не знаю, как я могу достичь функциональности, значит получать обновленные данные и затем использовать эти данные для дальнейшей отправки уведомлений пользователям.
Сводка функциональностиЯ хочу: - проанализировать данные с веб-сайта - найти новые данные - если появятся новые данные, отправить уведомления - установить задание cron для повторения
Мой старый скрипт сравнения выглядит так:
<?PHP
include '../config/dbData.php';
// required headers
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
$connect = mysqli_connect($HostName, $HostUser, $HostPass);
mysqli_select_db($connect, $DatabaseName);
mysqli_query($connect, "SET NAMES 'UTF8'") or die("ERROR: " . mysqli_error($connect));
$fetch3 = mysqli_query($connect, "SELECT * FROM timetable
WHERE id NOT IN (SELECT id FROM TimetableStudentCompare)
UNION
SELECT * FROM TimetableStudentCompare
WHERE id NOT IN (SELECT id FROM timetable)
UNION
SELECT * FROM timetable
WHERE Vertreter NOT IN (SELECT Vertreter FROM TimetableStudentCompare)
UNION
SELECT * FROM TimetableStudentCompare
WHERE Vertreter NOT IN (SELECT Vertreter FROM timetable)
UNION
SELECT * FROM timetable
WHERE Std NOT IN (SELECT Std FROM TimetableStudentCompare)
UNION
SELECT * FROM TimetableStudentCompare
WHERE Std NOT IN (SELECT Std FROM timetable)
UNION
SELECT * FROM timetable
WHERE Klasse NOT IN (SELECT Klasse FROM TimetableStudentCompare)
UNION
SELECT * FROM TimetableStudentCompare
WHERE Klasse NOT IN (SELECT Klasse FROM timetable)");
$array3 = array();
while ($row3 = mysqli_fetch_assoc($fetch3)) {
$array3[] = $row3;
}
echo json_encode($array3, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
// Fetching Klassen to a new array
$KlasseArray = array();
foreach ($array3 as $value) {
array_push($KlasseArray, $value['Klasse']);
}
// array only with classes
print_r($KlasseArray);
//Removing Duplicates
$list = $KlasseArray;
sort($list);
foreach ($list as $k => $v) {
if (isset($check)) {
if ($check === $v) {
unset($list[$k]);
}
}
$check = $v;
}
$noDuplicate = array_values($list);
// Result klassen with no duplicates
print_r($noDuplicate);
mysqli_close($connect);
Может кто-нибудь помочь мне с этим?