CodeIgniter4/app/Config/Format.php

65 lines
2.2 KiB
PHP
Raw Normal View History

2020-08-29 20:50:35 +08:00
<?php
namespace Config;
use CodeIgniter\Config\BaseConfig;
use CodeIgniter\Format\JSONFormatter;
use CodeIgniter\Format\XMLFormatter;
class Format extends BaseConfig
{
2021-06-04 22:51:52 +08:00
/**
* --------------------------------------------------------------------------
* Available Response Formats
* --------------------------------------------------------------------------
*
* When you perform content negotiation with the request, these are the
* available formats that your application supports. This is currently
* only used with the API\ResponseTrait. A valid Formatter must exist
* for the specified format.
*
* These formats are only checked when the data passed to the respond()
* method is an array.
*
2024-02-09 21:54:29 +08:00
* @var list<string>
2021-06-04 22:51:52 +08:00
*/
2022-06-27 17:33:04 +00:00
public array $supportedResponseFormats = [
2021-06-04 22:51:52 +08:00
'application/json',
'application/xml', // machine-readable XML
'text/xml', // human-readable XML
];
2021-06-04 22:51:52 +08:00
/**
* --------------------------------------------------------------------------
* Formatters
* --------------------------------------------------------------------------
*
* Lists the class to use to format responses with of a particular type.
* For each mime type, list the class that should be used. Formatters
* can be retrieved through the getFormatter() method.
*
* @var array<string, string>
*/
2022-06-27 17:33:04 +00:00
public array $formatters = [
'application/json' => JSONFormatter::class,
'application/xml' => XMLFormatter::class,
'text/xml' => XMLFormatter::class,
2021-06-04 22:51:52 +08:00
];
2020-07-29 01:54:07 +08:00
2021-06-04 22:51:52 +08:00
/**
* --------------------------------------------------------------------------
* Formatters Options
* --------------------------------------------------------------------------
*
* Additional Options to adjust default formatters behaviour.
* For each mime type, list the additional options that should be used.
*
* @var array<string, int>
*/
2022-06-27 17:33:04 +00:00
public array $formatterOptions = [
2021-06-04 22:51:52 +08:00
'application/json' => JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES,
'application/xml' => 0,
'text/xml' => 0,
];
}