mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2025-01-19 02:56:15 +00:00
Controller data is now set to an array instead of Xml object if request content type is 'application/xml'
This commit is contained in:
parent
41e6fdf346
commit
5f987a4996
2 changed files with 7 additions and 7 deletions
|
@ -219,10 +219,10 @@ class RequestHandlerComponent extends Object {
|
|||
}
|
||||
$xml = new Xml(trim(file_get_contents('php://input')));
|
||||
|
||||
if (is_object($xml->child('data')) && count($xml->children) == 1) {
|
||||
$controller->data = $xml->child('data');
|
||||
if (count($xml->children) == 1 && is_object($dataNode = $xml->child('data'))) {
|
||||
$controller->data = $dataNode->toArray();
|
||||
} else {
|
||||
$controller->data = $xml;
|
||||
$controller->data = $xml->toArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -241,8 +241,8 @@ class RequestHandlerComponentTest extends CakeTestCase {
|
|||
$_SERVER['REQUEST_METHOD'] = 'PUT';
|
||||
$_SERVER['CONTENT_TYPE'] = 'application/xml';
|
||||
$this->RequestHandler->startup($this->Controller);
|
||||
$this->assertTrue(is_object($this->Controller->data));
|
||||
$this->assertEqual(strtolower(get_class($this->Controller->data)), 'xml');
|
||||
$this->assertTrue(is_array($this->Controller->data));
|
||||
$this->assertFalse(is_object($this->Controller->data));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -254,8 +254,8 @@ class RequestHandlerComponentTest extends CakeTestCase {
|
|||
$_SERVER['REQUEST_METHOD'] = 'PUT';
|
||||
$_SERVER['CONTENT_TYPE'] = 'application/xml; charset=UTF-8';
|
||||
$this->RequestHandler->startup($this->Controller);
|
||||
$this->assertTrue(is_object($this->Controller->data));
|
||||
$this->assertEqual(strtolower(get_class($this->Controller->data)), 'xml');
|
||||
$this->assertTrue(is_array($this->Controller->data));
|
||||
$this->assertFalse(is_object($this->Controller->data));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Reference in a new issue