Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

200
Vistas
¿Cómo se puede pasar una fecha a CloudKit a través de CK Web Services desde un script PHP?

Estoy escribiendo un script PHP para enviar datos a una base de datos de CloudKit a través de CK Web Services. Funciona bien con datos de cadena, pero tengo problemas para pasar una fecha de PHP a un campo de fecha/hora de CK.

CK devuelve fechas como TIMESTAMP de 13 dígitos. Entonces, el siguiente código

 $timestamp = $record['created']['timestamp']; $timestamp = $timestamp/1000; echo '<td>'.date('mdY H:i:s', $timestamp)."</td>";

hace eco

28-04-2017 12:35:19

Fino y elegante.

Así que asumo que si CK entrega una MARCA DE TIEMPO de 13 dígitos, debería aceptar lo mismo cuando se pasa a un campo de Fecha/Hora.

Por desgracia, pasando $dobTimestamp de lo siguiente

 $dobTimestamp = strtotime($dob) * 1000;

Resultados en este error BAD_REQUEST

Valor no válido, tipo esperado TIMESTAMP

Cuando voy al panel de CK e ingreso manualmente $dob , CK devuelve un valor exactamente igual a $dobTimestamp , por lo que creo que pasar $dobTimestamp debería funcionar. . . pero no es así.

No puedo encontrar lo que se supone que debo hacer en los documentos de Apple. ¿Alguien sabe cómo pasar una fecha a un campo de fecha/hora de CK a través de los servicios web? Es difícil imaginar que no habría una manera de hacerlo.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Después de muchos intentos, esto es lo que funciona con PHP DateTime:

 $openingDate = $_POST['openingDate']; // is mm/dd/yyyy $closingDate = $_POST['closingDate'];

. . .

 // Process Dates $openingDateTime = new DateTime($openingDate, new DateTimeZone('America/New_York')); // Create new DateTime object $closingDateTime = new DateTime($closingDate, new DateTimeZone('America/New_York')); date_time_set($openingDateTime, 10, 00); // Set time for date object date_time_set($closingDateTime, 17, 00); // Set time for date object $oDate = (date_timestamp_get($openingDateTime)*1000); // Get the TIMESTAMP from DateTiem object and convert to milliseconds $cDate = (date_timestamp_get($closingDateTime)*1000);

El JSON para la consulta CK es simple:

. . .

 "openingDate": {"value":'.$oDate.'}, "closingDate": {"value":'.$cDate.'},
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda