]> git.mxchange.org Git - friendica.git/blobdiff - src/BaseCollection.php
Merge pull request #11194 from MrPetovan/bug/11193-post-user-view-body-null
[friendica.git] / src / BaseCollection.php
index 1aa13ae9611403df74bd3078f4b83bcd2989bfa2..0bf46f0dcb73d95d3639afe60f58a3a56ff85c54 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2021, the Friendica project
+ * @copyright Copyright (C) 2010-2022, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -87,7 +87,7 @@ class BaseCollection extends \ArrayIterator
         */
        public function column($column, $index_key = null)
        {
-               return array_column($this->getArrayCopy(), $column, $index_key);
+               return array_column($this->getArrayCopy(true), $column, $index_key);
        }
 
        /**
@@ -124,4 +124,21 @@ class BaseCollection extends \ArrayIterator
        {
                return new static(array_reverse($this->getArrayCopy()), $this->getTotalCount());
        }
+
+       /**
+        * @inheritDoc
+        *
+        * includes recursion for entity::toArray() function
+        * @see BaseEntity::toArray()
+        */
+       public function getArrayCopy(bool $recursive = false): array
+       {
+               if (!$recursive) {
+                       return parent::getArrayCopy();
+               }
+
+               return array_map(function ($item) {
+                       return is_object($item) ? $item->toArray() : $item;
+               }, parent::getArrayCopy());
+       }
 }