Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:php_ics_parser

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
informatica:programacion:php:php_ics_parser [2022/12/30 10:56] – creado tempwininformatica:programacion:php:php_ics_parser [2022/12/30 11:00] (actual) tempwin
Línea 17: Línea 17:
  
 try { try {
-    $ical = new ICal('xxx-2022-12-30.ics', array(+    $ical = new ICal('calendario.ics', array(
         'defaultSpan'                 => 2,     // Default value         'defaultSpan'                 => 2,     // Default value
         'defaultTimeZone'             => 'UTC',         'defaultTimeZone'             => 'UTC',
Línea 185: Línea 185:
 </html> </html>
 </code> </code>
 +
 +==== Procesando y metiendo en base de datos ====
 +
 +<code php>
 +<?php
 +
 +require_once 'ICal.php';
 +require_once 'Event.php';
 +require_once 'database.php';
 +
 +use ICal\ICal;
 +
 +try {
 +    $ical = new ICal('calendario.ics', array(
 +        'defaultSpan'                 => 2,     // Default value
 +        'defaultTimeZone'             => 'UTC',
 +        'defaultWeekStart'            => 'MO',  // Default value
 +        'disableCharacterReplacement' => false, // Default value
 +        'filterDaysAfter'             => null,  // Default value
 +        'filterDaysBefore'            => null,  // Default value
 +        'httpUserAgent'               => null,  // Default value
 +        'skipRecurrence'              => false, // Default value
 +    ));
 +    // $ical->initFile('ICal.ics');
 +    // $ical->initUrl('https://raw.githubusercontent.com/u01jmg3/ics-parser/master/examples/ICal.ics', $username = null, $password = null, $userAgent = null);
 +} catch (\Exception $e) {
 +    die($e);
 +}
 +
 +$events = $ical->sortEventsWithOrder($ical->events());
 +
 +foreach ($events as $event) {
 +
 +        $descripcion = $event->summary;
 +        $dtstart = $ical->iCalDateToDateTime($event->dtstart_array[3]);
 +        $fecha = $dtstart->format('Y-m-d');
 +
 +        $sql = "INSERT INTO cal (descripcion, fecha) VALUES ('{$descripcion}', '{$fecha}')";
 +
 +        $insertar = mysqli_query($link, $sql);
 +
 +}
 +</code>
 +
 +===== Recursos =====
 +
 +  * [[https://icalendar.org/validator.html|iCalendar Validator]]
informatica/programacion/php/php_ics_parser.1672394185.txt.gz · Última modificación: por tempwin