Merge pull request #648 from cviebrock/array-helpers
add array_except() and array_only(), mimicking Input::except() and Input::only() but for any array
This commit is contained in:
commit
cded744ac9
|
@ -245,6 +245,30 @@ function array_pluck($array, $key)
|
||||||
}, $array);
|
}, $array);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a subset of the items from the given array.
|
||||||
|
*
|
||||||
|
* @param array $array
|
||||||
|
* @param array $keys
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function array_only($array, $keys)
|
||||||
|
{
|
||||||
|
return array_intersect_key( $array, array_flip((array) $keys) );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all of the given array except for a specified array of items.
|
||||||
|
*
|
||||||
|
* @param array $array
|
||||||
|
* @param array $keys
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function array_except($array, $keys)
|
||||||
|
{
|
||||||
|
return array_diff_key( $array, array_flip((array) $keys) );
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Transform Eloquent models to a JSON object.
|
* Transform Eloquent models to a JSON object.
|
||||||
*
|
*
|
||||||
|
|
|
@ -127,7 +127,7 @@ public static function json()
|
||||||
*/
|
*/
|
||||||
public static function only($keys)
|
public static function only($keys)
|
||||||
{
|
{
|
||||||
return array_intersect_key(static::get(), array_flip((array) $keys));
|
return array_only(static::get(), $keys);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -146,7 +146,7 @@ public static function only($keys)
|
||||||
*/
|
*/
|
||||||
public static function except($keys)
|
public static function except($keys)
|
||||||
{
|
{
|
||||||
return array_diff_key(static::get(), array_flip((array) $keys));
|
return array_except(static::get(), $keys);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -207,7 +207,7 @@ public static function has_file($key)
|
||||||
{
|
{
|
||||||
return ! is_null(static::file("{$key}.tmp_name"));
|
return ! is_null(static::file("{$key}.tmp_name"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Move an uploaded file to permanent storage.
|
* Move an uploaded file to permanent storage.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue