mirror of
https://github.com/silverstripe/silverstripe-restfulserver
synced 2024-09-29 20:59:29 +02:00
44 lines
1.1 KiB
PHP
44 lines
1.1 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace SilverStripe\RestfulServer\DataFormatter;
|
||
|
|
||
|
/**
|
||
|
* Accepts form encoded strings and converts them
|
||
|
* to a valid PHP array via {@link parse_str()}.
|
||
|
*
|
||
|
* Example when using cURL on commandline:
|
||
|
* <code>
|
||
|
* curl -d "Name=This is a new record" http://host/api/v1/(DataObject)
|
||
|
* curl -X PUT -d "Name=This is an updated record" http://host/api/v1/(DataObject)/1
|
||
|
* </code>
|
||
|
*
|
||
|
* @todo Format response form encoded as well - currently uses XMLDataFormatter
|
||
|
*
|
||
|
* @author Cam Spiers <camspiers at gmail dot com>
|
||
|
*/
|
||
|
class FormEncodedDataFormatter extends XMLDataFormatter
|
||
|
{
|
||
|
|
||
|
public function supportedExtensions()
|
||
|
{
|
||
|
return array(
|
||
|
);
|
||
|
}
|
||
|
|
||
|
public function supportedMimeTypes()
|
||
|
{
|
||
|
return array(
|
||
|
'application/x-www-form-urlencoded'
|
||
|
);
|
||
|
}
|
||
|
|
||
|
public function convertStringToArray($strData)
|
||
|
{
|
||
|
$postArray = array();
|
||
|
parse_str($strData, $postArray);
|
||
|
return $postArray;
|
||
|
//TODO: It would be nice to implement this function in Convert.php
|
||
|
//return Convert::querystr2array($strData);
|
||
|
}
|
||
|
}
|