pp_setInputEncoding($inputEncoding); $this->pp_setOutputEncoding(null); } const PARAMETRABLE_PARAMS_SCHEMA = encoding_utils::PARAMETRABLE_PARAMS_SCHEMA; protected $ppInputEncoding; function pp_setInputEncoding(?string $inputEncoding): self { if ($inputEncoding === null) $inputEncoding = $this->INPUT_ENCODING(); $this->ppInputEncoding = $inputEncoding; return $this; } protected $ppOutputEncoding; function pp_setOutputEncoding(?string $outputEncoding): self { if ($outputEncoding === null) $outputEncoding = $this->OUTPUT_ENCODING(); $this->ppOutputEncoding = $outputEncoding; return $this; } function _cook(&$values, string $fromEncoding, string $toEncoding): void { if (is_array($values)) { foreach ($values as &$value) { $this->_cook($value, $fromEncoding, $toEncoding); }; unset($value); } else { $values = iconv($fromEncoding, $toEncoding, strval($values)); } } function mapper($item) { $inputEncoding = $this->ppInputEncoding; $outputEncoding = $this->ppOutputEncoding; if ($inputEncoding !== null && $outputEncoding !== null) { $this->_cook($item, $inputEncoding, $outputEncoding); } return $item; } ############################################################################# const _AUTOGEN_CONSTS = [ "" => [self::class, "_autogen_consts"], ]; const _AUTOGEN_LITERALS = /*autogen*/[ [ \nur\b\params\parametrable_utils::class, '\\nur\\b\\params\\parametrable_utils::class', ], [ self::PARAMETRABLE_PARAMS_SCHEMA, 'self::PARAMETRABLE_PARAMS_SCHEMA', ], ]; const _AUTOGEN_METHODS = /*autogen*/[ [ \nur\b\params\parametrable_utils::class, '_autogen_methods_getters', self::PARAMETRABLE_PARAMS_SCHEMA, null, ], [ \nur\b\params\parametrable_utils::class, '_autogen_methods_setters', self::PARAMETRABLE_PARAMS_SCHEMA, null, ], ]; const _AUTO_GETTERS = /*autogen*/[ 'getInputEncoding' => 'input_encoding', 'getOutputEncoding' => 'output_encoding', ]; const _AUTO_SETTERS = /*autogen*/[ 'setInputEncoding' => 'input_encoding', 'setOutputEncoding' => 'output_encoding', ]; #--autogen-dynamic-- }