<?php
function filterLabel($label)
{
$filtered = key(array(trim($label) => 1));
if ($filtered === false) {
throw new UnexpectedValueException('Unable to filter %s', var_export($label, true));
}
return $filtered;
}
$data = array("foo", "0foo", 0, "0", "00", 1, NULL, FALSE, new SimpleXMLElement('<root />'));
foreach ($data as $index => $label) {
printf("==== %d ====\n", $index);
var_dump($label, filterLabel($label));
}
- Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- ==== 0 ====
string(3) "foo"
string(3) "foo"
==== 1 ====
string(4) "0foo"
string(4) "0foo"
==== 2 ====
int(0)
int(0)
==== 3 ====
string(1) "0"
int(0)
==== 4 ====
string(2) "00"
string(2) "00"
==== 5 ====
int(1)
int(1)
==== 6 ====
Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /in/ZEQdJ on line 5
NULL
string(0) ""
==== 7 ====
bool(false)
string(0) ""
==== 8 ====
object(SimpleXMLElement)#1 (0) {
}
string(0) ""
- Output for 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.7 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30
- ==== 0 ====
string(3) "foo"
string(3) "foo"
==== 1 ====
string(4) "0foo"
string(4) "0foo"
==== 2 ====
int(0)
int(0)
==== 3 ====
string(1) "0"
int(0)
==== 4 ====
string(2) "00"
string(2) "00"
==== 5 ====
int(1)
int(1)
==== 6 ====
NULL
string(0) ""
==== 7 ====
bool(false)
string(0) ""
==== 8 ====
object(SimpleXMLElement)#1 (0) {
}
string(0) ""
- Output for 4.3.2 - 4.3.11, 4.4.0, 4.4.2 - 4.4.9, 5.0.0 - 5.0.5
- Fatal error: Only variables can be passed by reference in /in/ZEQdJ on line 5
Process exited with code 255. - Output for 4.4.1
- Parse error: parse error, unexpected T_NEW in /in/ZEQdJ on line 8
Process exited with code 255. - Output for 4.3.0 - 4.3.1
- Fatal error: Only variables can be passed by reference in /in/ZEQdJ on line 5
preferences:
219.01 ms | 401 KiB | 341 Q