Skip to content

Commit

Permalink
fix dumping number-like string parameters
Browse files Browse the repository at this point in the history
  • Loading branch information
xabbuh committed Nov 29, 2019
1 parent 3bd5fae commit a181423
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 0 deletions.
Expand Up @@ -304,6 +304,11 @@ private function convertParameters(array $parameters, $type, \DOMElement $parent
if (\in_array($value, ['null', 'true', 'false'], true)) {
$element->setAttribute('type', 'string');
}

if (\is_string($value) && (is_numeric($value) || preg_match('/^0b[01]*$/', $value) || preg_match('/^0x[0-9a-f]++$/i', $value))) {
$element->setAttribute('type', 'string');
}

$text = $this->document->createTextNode(self::phpToXml($value));
$element->appendChild($text);
}
Expand Down
Expand Up @@ -9,6 +9,17 @@
'bar' => 'foo is %%foo bar',
'escape' => '@escapeme',
'values' => [true, false, null, 0, 1000.3, 'true', 'false', 'null'],
'null string' => 'null',
'string of digits' => '123',
'string of digits prefixed with minus character' => '-123',
'true string' => 'true',
'false string' => 'false',
'binary number string' => '0b0110',
'numeric string' => '-1.2E2',
'hexadecimal number string' => '0xFF',
'float string' => '10100.1',
'positive float string' => '+10100.1',
'negative float string' => '-10100.1',
]));

return $container;
Expand Up @@ -18,6 +18,17 @@
<parameter type="string">false</parameter>
<parameter type="string">null</parameter>
</parameter>
<parameter key="null string" type="string">null</parameter>
<parameter key="string of digits" type="string">123</parameter>
<parameter key="string of digits prefixed with minus character" type="string">-123</parameter>
<parameter key="true string" type="string">true</parameter>
<parameter key="false string" type="string">false</parameter>
<parameter key="binary number string" type="string">0b0110</parameter>
<parameter key="numeric string" type="string">-1.2E2</parameter>
<parameter key="hexadecimal number string" type="string">0xFF</parameter>
<parameter key="float string" type="string">10100.1</parameter>
<parameter key="positive float string" type="string">+10100.1</parameter>
<parameter key="negative float string" type="string">-10100.1</parameter>
</parameters>
<services>
<service id="service_container" class="Symfony\Component\DependencyInjection\ContainerInterface" public="true" synthetic="true"/>
Expand Down

0 comments on commit a181423

Please sign in to comment.