PHP - неправильный формат даты

0

Я пытаюсь общаться с SOAP-сервером, и я отправляю данные на сервер, но он отклоняет формат даты, который я использую. Я буквально пробовал все в течение последних двух дней, и, насколько я вижу, формат верен. Это код, который я использую для создания даты. Я прочитал подобные вопросы, но я не могу найти ответа ни в одном из них.

$_dateTo=date('Y-m-d');

Output 
2015-01-28

Это ошибка, которую он генерирует.

SoapFault Object ( [message:protected] => Date to is in wrong format, should be: 'YYYY-MM-DD' [string:Exception:private] 

Это XML

<message name="webrequestRequest">
<part name="studentId" type="xsd:integer"/>
<part name="type" type="xsd:string"/>
<part name="dateFrom" type="xsd:date"/>
<part name="dateTo" type="xsd:date"/>
<part name="description" type="xsd:string"/>
<part name="extraField1" type="xsd:string"/>
<part name="extraField2" type="xsd:string"/>
<part name="extraField3" type="xsd:string"/>
</message>
  • 1
    Дайте нам больше информации. может быть, немного XML?
  • 0
    @SandroEric добавлен
Показать ещё 4 комментария
Теги:
date
soap

1 ответ

0

Попробуйте следующее и посмотрите, не дают ли вам каких-либо ошибок

$dateFrom = new DateTime();
$dateTo = new DateTime();

$writer = new XMLWriter();
$writer->openMemory();
$writer->startDocument('1.0', 'UTF-8');

$writer->startElement('message');

    $writer->startElement('part');
        $writer->writeAttribute('name', 'studentId');
        $writer->writeAttribute('type', 'xsd:integer');
        $writer->Text();
    $writer->endElement($studentId);

    $writer->startElement('part');
        $writer->writeAttribute('name', 'type');
        $writer->writeAttribute('type', 'xsd:string');
        $writer->Text($type);
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'dateFrom');
        $writer->writeAttribute('type', 'xsd:date');
        $writer->Text($dateFrom->format('Y-m-d'));
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'dateTo');
        $writer->writeAttribute('type', 'xsd:date');
        $writer->Text($dateTo->format('Y-m-d'));
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'description');
        $writer->writeAttribute('type', 'xsd:string');
        $writer->Text($description);
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'extraField1');
        $writer->writeAttribute('type', 'xsd:string');
        $writer->Text($extraField1);
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'extraField2');
        $writer->writeAttribute('type', 'xsd:string');
        $writer->Text($extraField2);
    $writer->endElement();

    $writer->startElement('part');
        $writer->writeAttribute('name', 'extraField3');
        $writer->writeAttribute('type', 'xsd:string');
        $writer->Text($extraField3);
    $writer->endElement();

$writer->endElement(); // /message
$writer->endDocument();

$message = $writer->outputMemory(true);

Не забудьте сначала задать свои значения.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню