Avoiding unwanted side effects

This commit is contained in:
Michael 2020-06-06 19:29:37 +00:00
parent 0799b721c9
commit c38452d16e
1 changed files with 3 additions and 5 deletions

View File

@ -173,7 +173,7 @@ class JsonLD
* *
* @return array fetched element * @return array fetched element
*/ */
public static function fetchElementArray($array, $element, $key = '@id') public static function fetchElementArray($array, $element, $key = null)
{ {
if (empty($array)) { if (empty($array)) {
return null; return null;
@ -191,12 +191,10 @@ class JsonLD
$elements = []; $elements = [];
foreach ($array[$element] as $entry) { foreach ($array[$element] as $entry) {
if (!is_array($entry)) { if (!is_array($entry) || (is_null($key) && is_array($entry))) {
$elements[] = $entry; $elements[] = $entry;
} elseif (isset($entry[$key])) { } elseif (!is_null($key) && isset($entry[$key])) {
$elements[] = $entry[$key]; $elements[] = $entry[$key];
} elseif (!empty($entry) || !is_array($entry)) {
$elements[] = $entry;
} }
} }