Horde_Ldap_Util::unescapeDNValue PHP Method

unescapeDNValue() public static method

Reverts the conversion done by escapeDNValue(). Any escape sequence starting with a baskslash - hexpair or special character - will be transformed back to the corresponding character.
public static unescapeDNValue ( array $values ) : array
$values array DN values.
return array Unescaped DN values.
    public static function unescapeDNValue($values)
    {
        // Parameter validation.
        if (!is_array($values)) {
            $values = array($values);
        }
        foreach ($values as $key => $val) {
            // Strip slashes from special chars.
            $val = str_replace(array('\\\\', '\\,', '\\+', '\\"', '\\<', '\\>', '\\;', '\\#', '\\='), array('\\', ',', '+', '"', '<', '>', ';', '#', '='), $val);
            // Translate hex code into ascii.
            $values[$key] = self::hex2asc($val);
        }
        return $values;
    }

Usage Example

コード例 #1
0
ファイル: UtilTest.php プロジェクト: horde/horde
 /**
  * Test unescapeDNValue()
  */
 public function testUnescapeDNValue()
 {
     $dnval = '\\20\\20\\16\\20t\\,e\\+s \\"t\\,\\\\v\\<a\\>l\\;u\\#e\\=!\\20\\20\\20\\20';
     $expected = '  ' . chr(22) . ' t,e+s "t,\\v<a>l;u#e=!    ';
     // String call.
     $this->assertEquals(array($expected), Horde_Ldap_Util::unescapeDNValue($dnval));
     // Array call.
     $this->assertEquals(array($expected), Horde_Ldap_Util::unescapeDNValue(array($dnval)));
     // Multiple arrays.
     $this->assertEquals(array($expected, $expected, $expected), Horde_Ldap_Util::unescapeDNValue(array($dnval, $dnval, $dnval)));
 }
All Usage Examples Of Horde_Ldap_Util::unescapeDNValue