wp_slash

The timeline below displays how wordpress function wp_slash has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.1

/**
 * Adds slashes to a string or recursively adds slashes to strings within an array.
 *
 * This should be used when preparing data for core API that expects slashed data.
 * This should not be used to escape data going directly into an SQL query.
 *
 * @since 3.6.0
 * @since 5.5.0 Non-string values are left untouched.
 *
 * @param string|array $value String or array of data to slash.
 * @return string|array Slashed `$value`, in the same type as supplied.
 */
function wp_slash($value)
{
    if (is_array($value)) {
        $value = array_map('wp_slash', $value);
    }
    if (is_string($value)) {
        return addslashes($value);
    }
    return $value;
}

WordPress Version: 5.9

/**
 * Adds slashes to a string or recursively adds slashes to strings within an array.
 *
 * This should be used when preparing data for core API that expects slashed data.
 * This should not be used to escape data going directly into an SQL query.
 *
 * @since 3.6.0
 * @since 5.5.0 Non-string values are left untouched.
 *
 * @param string|array $value String or array of data to slash.
 * @return string|array Slashed `$value`.
 */
function wp_slash($value)
{
    if (is_array($value)) {
        $value = array_map('wp_slash', $value);
    }
    if (is_string($value)) {
        return addslashes($value);
    }
    return $value;
}

WordPress Version: 5.7

/**
 * Adds slashes to a string or recursively adds slashes to strings within an array.
 *
 * This should be used when preparing data for core API that expects slashed data.
 * This should not be used to escape data going directly into an SQL query.
 *
 * @since 3.6.0
 * @since 5.5.0 Non-string values are left untouched.
 *
 * @param string|array $value String or array of data to slash.
 * @return string|array Slashed $value.
 */
function wp_slash($value)
{
    if (is_array($value)) {
        $value = array_map('wp_slash', $value);
    }
    if (is_string($value)) {
        return addslashes($value);
    }
    return $value;
}

WordPress Version: 5.5

/**
 * Add slashes to a string or array of strings, in a recursive manner.
 *
 * This should be used when preparing data for core API that expects slashed data.
 * This should not be used to escape data going directly into an SQL query.
 *
 * @since 3.6.0
 * @since 5.5.0 Non-string values are left untouched.
 *
 * @param string|string[] $value String or array of strings to slash.
 * @return string|string[] Slashed $value.
 */
function wp_slash($value)
{
    if (is_array($value)) {
        $value = array_map('wp_slash', $value);
    }
    if (is_string($value)) {
        return addslashes($value);
    }
    return $value;
}

WordPress Version: 3.7

/**
 * Add slashes to a string or array of strings.
 *
 * This should be used when preparing data for core API that expects slashed data.
 * This should not be used to escape data going directly into an SQL query.
 *
 * @since 3.6.0
 *
 * @param string|array $value String or array of strings to slash.
 * @return string|array Slashed $value
 */
function wp_slash($value)
{
    if (is_array($value)) {
        foreach ($value as $k => $v) {
            if (is_array($v)) {
                $value[$k] = wp_slash($v);
            } else {
                $value[$k] = addslashes($v);
            }
        }
    } else {
        $value = addslashes($value);
    }
    return $value;
}