本文整理汇总了PHP中backup_delete_old_data函数的典型用法代码示例。如果您正苦于以下问题:PHP backup_delete_old_data函数的具体用法?PHP backup_delete_old_data怎么用?PHP backup_delete_old_data使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了backup_delete_old_data函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: backup_execute
function backup_execute(&$preferences, &$errorstr)
{
global $CFG;
$status = true;
//Check for temp and backup and backup_unique_code directory
//Create them as needed
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("creatingtemporarystructures") . '</li>';
}
$status = check_and_create_backup_dir($preferences->backup_unique_code);
//Empty dir
if ($status) {
$status = clear_backup_dir($preferences->backup_unique_code);
}
//Delete old_entries from backup tables
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("deletingolddata") . '</li>';
}
$status = backup_delete_old_data();
if (!$status) {
if (!defined('BACKUP_SILENTLY')) {
notify("An error occurred deleting old backup data");
} else {
$errorstr = "An error occurred deleting old backup data";
return false;
}
}
//Create the moodle.xml file
if ($status) {
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("creatingxmlfile");
//Begin a new list to xml contents
echo "<ul>";
echo "<li>" . get_string("writingheader") . '</li>';
}
//Obtain the xml file (create and open) and print prolog information
$backup_file = backup_open_xml($preferences->backup_unique_code);
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("writinggeneralinfo") . '</li>';
}
//Prints general info about backup to file
if ($backup_file) {
if (!($status = backup_general_info($backup_file, $preferences))) {
if (!defined('BACKUP_SILENTLY')) {
notify("An error occurred while backing up general info");
} else {
$errorstr = "An error occurred while backing up general info";
return false;
}
}
}
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("writingcoursedata");
//Start new ul (for course)
echo "<ul>";
echo "<li>" . get_string("courseinfo") . '</li>';
}
//Prints course start (tag and general info)
if ($status) {
if (!($status = backup_course_start($backup_file, $preferences))) {
if (!defined('BACKUP_SILENTLY')) {
notify("An error occurred while backing up course start");
} else {
$errorstr = "An error occurred while backing up course start";
return false;
}
}
}
//Metacourse information
if ($status && $preferences->backup_metacourse) {
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("metacourse") . '</li>';
}
if (!($status = backup_course_metacourse($backup_file, $preferences))) {
if (!defined('BACKUP_SILENTLY')) {
notify("An error occurred while backing up metacourse info");
} else {
$errorstr = "An error occurred while backing up metacourse info";
return false;
}
}
}
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("blocks") . '</li>';
}
//Blocks information
if ($status) {
if (!($status = backup_course_blocks($backup_file, $preferences))) {
if (!defined('BACKUP_SILENTLY')) {
notify("An error occurred while backing up course blocks");
} else {
$errorstr = "An error occurred while backing up course blocks";
return false;
}
}
}
if (!defined('BACKUP_SILENTLY')) {
echo "<li>" . get_string("sections") . '</li>';
}
//Section info
//.........这里部分代码省略.........
示例2: restore_precheck
/**
* @param string $errorstr passed by reference, if silent is true,
* errorstr will be populated and this function will return false rather than calling error() or notify()
* @param boolean $noredirect (optional) if this is passed, this function will not print continue, or
* redirect to the next step in the restore process, instead will return $backup_unique_code
*/
function restore_precheck($id, $file, &$errorstr, $noredirect = false)
{
global $CFG, $SESSION;
//Prepend dataroot to variable to have the absolute path
$file = $CFG->dataroot . "/" . $file;
if (!defined('RESTORE_SILENTLY')) {
//Start the main table
echo "<table cellpadding=\"5\">";
echo "<tr><td>";
//Start the mail ul
echo "<ul>";
}
//Check the file exists
if (!is_file($file)) {
if (!defined('RESTORE_SILENTLY')) {
error("File not exists ({$file})");
} else {
$errorstr = "File not exists ({$file})";
return false;
}
}
//Check the file name ends with .zip
if (!substr($file, -4) == ".zip") {
if (!defined('RESTORE_SILENTLY')) {
error("File has an incorrect extension");
} else {
$errorstr = 'File has an incorrect extension';
return false;
}
}
//Now calculate the unique_code for this restore
$backup_unique_code = time();
//Now check and create the backup dir (if it doesn't exist)
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("creatingtemporarystructures") . '</li>';
}
$status = check_and_create_backup_dir($backup_unique_code);
//Empty dir
if ($status) {
$status = clear_backup_dir($backup_unique_code);
}
//Now delete old data and directories under dataroot/temp/backup
if ($status) {
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("deletingolddata") . '</li>';
}
$status = backup_delete_old_data();
}
//Now copy he zip file to dataroot/temp/backup/backup_unique_code
if ($status) {
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("copyingzipfile") . '</li>';
}
if (!($status = backup_copy_file($file, $CFG->dataroot . "/temp/backup/" . $backup_unique_code . "/" . basename($file)))) {
if (!defined('RESTORE_SILENTLY')) {
notify("Error copying backup file. Invalid name or bad perms.");
} else {
$errorstr = "Error copying backup file. Invalid name or bad perms";
return false;
}
}
}
//Now unzip the file
if ($status) {
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("unzippingbackup") . '</li>';
}
if (!($status = restore_unzip($CFG->dataroot . "/temp/backup/" . $backup_unique_code . "/" . basename($file)))) {
if (!defined('RESTORE_SILENTLY')) {
notify("Error unzipping backup file. Invalid zip file.");
} else {
$errorstr = "Error unzipping backup file. Invalid zip file.";
return false;
}
}
}
//Check for Blackboard backups and convert
if ($status) {
require_once "{$CFG->dirroot}/backup/bb/restore_bb.php";
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("checkingforbbexport") . '</li>';
}
$status = blackboard_convert($CFG->dataroot . "/temp/backup/" . $backup_unique_code);
}
//Now check for the moodle.xml file
if ($status) {
$xml_file = $CFG->dataroot . "/temp/backup/" . $backup_unique_code . "/moodle.xml";
if (!defined('RESTORE_SILENTLY')) {
echo "<li>" . get_string("checkingbackup") . '</li>';
}
if (!($status = restore_check_moodle_file($xml_file))) {
if (!is_file($xml_file)) {
$errorstr = 'Error checking backup file. moodle.xml not found at root level of zip file.';
} else {
//.........这里部分代码省略.........
示例3: schedule_backup_cron
function schedule_backup_cron()
{
global $CFG, $DB;
$status = true;
$emailpending = false;
//Check for required functions...
if (!function_exists('utf8_encode')) {
mtrace(" ERROR: You need to add XML support to your PHP installation!");
return true;
}
//Get now
$now = time();
//First of all, we have to see if the scheduled is active and detect
//that there isn't another cron running
mtrace(" Checking backup status", '...');
$backup_config = backup_get_config();
if (!isset($backup_config->backup_sche_active) || !$backup_config->backup_sche_active) {
mtrace("INACTIVE");
return true;
} else {
if (isset($backup_config->backup_sche_running) && $backup_config->backup_sche_running) {
mtrace("RUNNING");
//Now check if it's a really running task or something very old looking
//for info in backup_logs to unlock status as necessary
$timetosee = 1800;
//Half an hour looking for activity
$timeafter = time() - $timetosee;
$numofrec = $DB->count_records_select("backup_log", "time > ? AND backuptype = ?", array($timeafter, 'scheduledbackup'));
if (!$numofrec) {
$timetoseemin = $timetosee / 60;
mtrace(" No activity in last " . $timetoseemin . " minutes. Unlocking status");
} else {
mtrace(" Scheduled backup seems to be running. Execution delayed");
return true;
}
} else {
mtrace("OK");
//Mark backup_sche_running
backup_set_config("backup_sche_running", "1");
}
}
//Now we get the main admin user (we'll use his timezone, mail...)
mtrace(" Getting admin info");
$admin = get_admin();
if (!$admin) {
$status = false;
}
//Delete old_entries from backup tables
if ($status) {
mtrace(" Deleting old data");
if (!backup_delete_old_data()) {
$errorstr = "An error occurred deleting old backup data";
add_to_backup_log(time(), $preferences->backup_course, $errorstr, 'scheduledbackup');
mtrace(" " . $errorstr);
}
}
//Now we get a list of courses in the server
if ($status) {
mtrace(" Checking courses");
//First of all, we delete everything from backup tables related to deleted courses
mtrace(" Skipping deleted courses");
$skipped = 0;
if ($bckcourses = $DB->get_records('backup_courses')) {
foreach ($bckcourses as $bckcourse) {
//Search if it exists
if (!($exists = $DB->get_record('course', array('id' => $bckcourse->courseid)))) {
//Doesn't exist, so delete from backup tables
$DB->delete_records('backup_courses', array('courseid' => $bckcourse->courseid));
$DB->delete_records('backup_log', array('courseid' => $bckcourse->courseid));
$skipped++;
}
}
}
mtrace(" {$skipped} courses");
//Now process existing courses
$courses = $DB->get_records("course");
//For each course, we check (insert, update) the backup_course table
//with needed data
foreach ($courses as $course) {
if ($status) {
mtrace(" {$course->fullname}");
//We check if the course exists in backup_course
$backup_course = $DB->get_record("backup_courses", array("courseid" => $course->id));
//If it doesn't exist, create
if (!$backup_course) {
$temp_backup_course->courseid = $course->id;
$newid = $DB->insert_record("backup_courses", $temp_backup_course);
//And get it from db
$backup_course = $DB->get_record("backup_courses", array("id" => $newid));
}
//If it doesn't exist now, error
if (!$backup_course) {
mtrace(" ERROR (in backup_courses detection)");
$status = false;
continue;
}
// Skip backup of unavailable courses that have remained unmodified in a month
$skipped = false;
if (!$course->visible && $now - $course->timemodified > 31 * 24 * 60 * 60) {
//Hidden + unmodified last month
//.........这里部分代码省略.........
示例4: prepareDir
protected function prepareDir()
{
// 一時ディレクトリを作成して中身を空にする
if (!check_and_create_backup_dir($this->getUnique()) || !clear_backup_dir($this->getUnique())) {
throw new SharingCart_Exception('Preparation failure');
}
// 残っている古い(=4時間以上前の)バックアップデータを削除
if (!backup_delete_old_data()) {
throw new SharingCart_Exception('Preparation failure');
}
}
示例5: restoreCourse
public static function restoreCourse($preferences, $session)
{
global $Out;
// the initial set of preferences should be enough to get the restore started.
// once in progress the restore will obtain the preferences from the backup file
// itself
if (!isset($preferences)) {
return null;
}
// Assumes the backup file is in the course data directory and the
// preferences are in the backup file itself.
global $CFG;
// for large files uncomment following code
//@ini_set("max_execution_time","3000");
//raise_memory_limit("192M");
$file = self::createBackupFilePath($preferences->course_id);
$file .= '/' . $preferences->backup_name;
//path to file
//Check the file exists
if (!is_file($file)) {
return false;
}
//Check the file name ends with .zip
if (!substr($file, -4) == ".zip") {
return false;
}
//Now calculate the unique_code for this restore
$backup_unique_code = $preferences->backup_unique_code;
//Now check and create the backup dir (if it doesn't exist)
$status = check_and_create_backup_dir($backup_unique_code);
//Empty dir
if ($status) {
$status = clear_backup_dir($backup_unique_code);
}
//Now delete old data and directories under dataroot/temp/backup
if ($status) {
$status = backup_delete_old_data();
}
$tempBackupPath = synch_backup_controller::createTempBackupPath($backup_unique_code);
//Now copy the zip file to dataroot/temp/backup/backup_unique_code
if ($status) {
if (!($status = backup_copy_file($file, $tempBackupPath . "/" . basename($file)))) {
// There has been a problem. Invalid name or bad perms
return false;
}
}
//Now unzip the file
if ($status) {
if (!($status = restore_unzip($tempBackupPath . "/" . basename($file)))) {
// error: Invalid zip file
return false;
}
}
//Check for Blackboard backups and convert
if ($status) {
require_once "{$CFG->dirroot}/backup/bb/restore_bb.php";
$status = blackboard_convert($tempBackupPath);
}
// backup file has now been unpacked. Retrieve the serialized preferences
$preferencesPath = $tempBackupPath . '/' . self::getPreferencesFileName();
$preferences = FileSystem::unSerializeFromFile($preferencesPath);
// Now we have the preferences from the backup we need to tailor it to our current needs
// should we be updating an existing item or creating one.
$dataItemId = SynchContentHierarchy::generateDataItemId($preferences->course_id, synch_view_controller::$TYPE_ID_COURSE);
global $SynchManager, $SynchServerController;
$itemExists = $SynchManager->getSessionItemExistsByServerId($SynchServerController->getServerId(), $session);
if (isset($itemExists) && is_array($itemExists) && in_array($dataItemId, $itemExists)) {
$preferences->restoreto = 1;
$preferences->deleting = 1;
} else {
$preferences->restoreto = 2;
}
//Now check for the moodle.xml file
if ($status) {
$xml_file = $tempBackupPath . "/moodle.xml";
if (!($status = restore_check_moodle_file($xml_file))) {
if (!is_file($xml_file)) {
//Error checking backup file. moodle.xml not found at root level of zip file
return false;
} else {
//Error checking backup file. moodle.xml is incorrect or corrupted.
return false;
}
}
}
//unpack backup file
//read contents
//Reading info from file
$info = restore_read_xml_info($xml_file);
//Reading course_header from file
$courseHeader = restore_read_xml_course_header($xml_file);
//Save course header and info into php session
if ($status) {
//$SESSION->info = $info;
//$SESSION->course_header = $course_header;
}
global $restore;
$restore = $preferences;
$message = null;
$restoreSuccess = restore_execute($preferences, $info, $courseHeader, $message);
//.........这里部分代码省略.........
示例6: schedule_backup_cron
function schedule_backup_cron()
{
global $CFG;
$status = true;
$emailpending = false;
//Check for required functions...
if (!function_exists('utf8_encode')) {
mtrace(" ERROR: You need to add XML support to your PHP installation!");
return true;
}
//Get now
$now = time();
//First of all, we have to see if the scheduled is active and detect
//that there isn't another cron running
mtrace(" Checking backup status", '...');
$backup_config = backup_get_config();
if (!isset($backup_config->backup_sche_active) || !$backup_config->backup_sche_active) {
mtrace("INACTIVE");
return true;
} else {
if (isset($backup_config->backup_sche_running) && $backup_config->backup_sche_running) {
mtrace("RUNNING");
//Now check if it's a really running task or something very old looking
//for info in backup_logs to unlock status as necessary
$timetosee = 1800;
//Half an hour looking for activity
$timeafter = time() - $timetosee;
$numofrec = count_records_select("backup_log", "time > {$timeafter}");
if (!$numofrec) {
$timetoseemin = $timetosee / 60;
mtrace(" No activity in last " . $timetoseemin . " minutes. Unlocking status");
} else {
mtrace(" Scheduled backup seems to be running. Execution delayed");
return true;
}
} else {
mtrace("OK");
//Mark backup_sche_running
backup_set_config("backup_sche_running", "1");
}
}
//Now we get the main admin user (we'll use his timezone, mail...)
mtrace(" Getting admin info");
$admin = get_admin();
if (!$admin) {
$status = false;
}
//Delete old_entries from backup tables
if ($status) {
mtrace(" Deleting old data");
$status = backup_delete_old_data();
}
//Now we get a list of courses in the server
if ($status) {
mtrace(" Checking courses");
//First of all, we delete everything from backup tables related to deleted courses
mtrace(" Skipping deleted courses");
$skipped = 0;
if ($bckcourses = get_records('backup_courses')) {
foreach ($bckcourses as $bckcourse) {
//Search if it exists
if (!($exists = get_record('course', 'id', "{$bckcourse->courseid}"))) {
//Doesn't exist, so delete from backup tables
delete_records('backup_courses', 'courseid', "{$bckcourse->courseid}");
delete_records('backup_log', 'courseid', "{$bckcourse->courseid}");
$skipped++;
}
}
}
mtrace(" {$skipped} courses");
//Now process existing courses
$courses = get_records("course");
//For each course, we check (insert, update) the backup_course table
//with needed data
foreach ($courses as $course) {
if ($status) {
mtrace(" {$course->fullname}");
//We check if the course exists in backup_course
$backup_course = get_record("backup_courses", "courseid", $course->id);
//If it doesn't exist, create
if (!$backup_course) {
$temp_backup_course->courseid = $course->id;
$newid = insert_record("backup_courses", $temp_backup_course);
//And get it from db
$backup_course = get_record("backup_courses", "id", $newid);
}
//If it doesn't exist now, error
if (!$backup_course) {
mtrace(" ERROR (in backup_courses detection)");
$status = false;
continue;
}
// Skip courses that do not yet need backup
$skipped = !($backup_course->nextstarttime > 0 && $backup_course->nextstarttime < $now);
// Skip backup of unavailable courses that have remained unmodified in a month
if (!$skipped && !$course->visible && $now - $course->timemodified > 31 * 24 * 60 * 60) {
//Hidden + settings were unmodified last month
//Check log if there were any modifications to the course content
$sql = 'SELECT l.id FROM ' . $CFG->prefix . 'log l WHERE ' . 'l.course=' . $course->id . ' AND l.time>' . ($now - 31 * 24 * 60 * 60) . " AND lower(l.action) not like '%view%'";
$logexists = record_exists_sql($sql);
//.........这里部分代码省略.........