Overview

Namespaces

  • Deimos
    • Helper
      • Exceptions
      • Helpers
        • Arr
        • Str
      • Traits
  • PHP

Classes

  • Deimos\Helper\AbstractHelper
  • Deimos\Helper\Helper
  • Deimos\Helper\Helpers\Arr\Arr
  • Deimos\Helper\Helpers\Dir
  • Deimos\Helper\Helpers\File
  • Deimos\Helper\Helpers\Json
  • Deimos\Helper\Helpers\Math
  • Deimos\Helper\Helpers\Money
  • Deimos\Helper\Helpers\Str\Str

Interfaces

  • Deimos\Helper\InterfaceHelper
  • Throwable

Traits

  • Deimos\Helper\Helpers\Arr\KeyTrait
  • Deimos\Helper\Helpers\Arr\StackTrait
  • Deimos\Helper\Helpers\Str\DefaultTrait
  • Deimos\Helper\Traits\Helper

Exceptions

  • Deimos\Helper\Exceptions\ExceptionEmpty
  • Exception
  • InvalidArgumentException
  • LogicException
  • Overview
  • Namespace
  • Class
  • Tree
  • Deprecated
  • Todo
 1: <?php
 2: 
 3: namespace Deimos\Helper\Helpers\Arr;
 4: 
 5: trait KeyTrait
 6: {
 7: 
 8:     /**
 9:      * @param array $storage
10:      *
11:      * @return mixed
12:      */
13:     public function firstKey(array $storage)
14:     {
15:         reset($storage);
16: 
17:         return key($storage);
18:     }
19: 
20:     /**
21:      * @param array $storage
22:      *
23:      * @return mixed
24:      */
25:     public function lastKey(array $storage)
26:     {
27:         end($storage);
28: 
29:         return key($storage);
30:     }
31: 
32:     /**
33:      * @param array  $storage
34:      * @param string $key
35:      *
36:      * @return mixed
37:      */
38:     public function at(array $storage, $key)
39:     {
40:         return $storage[$key];
41:     }
42: 
43:     /**
44:      * 0=>'', 2=> ''...
45:      *
46:      * @param array $storage
47:      *
48:      * @return array
49:      */
50:     public function oddKey(array $storage)
51:     {
52:         return $this->filter($storage, function ($value, $key)
53:         {
54:             return $this->helper->math()->isOdd($key);
55:         });
56:     }
57: 
58:     /**
59:      * 1=>'', 3=>''...
60:      *
61:      * @param array $storage
62:      *
63:      * @return array
64:      */
65:     public function evenKey(array $storage)
66:     {
67:         return $this->filter($storage, function ($value, $key)
68:         {
69:             return $this->helper->math()->isEven($key);
70:         });
71:     }
72: 
73:     /**
74:      * @param array  $storage
75:      * @param string $key
76:      *
77:      * @return bool
78:      */
79:     public function keyExists(array $storage, $key)
80:     {
81:         return isset($storage[$key]) || array_key_exists($key, $storage);
82:     }
83: 
84:     /**
85:      * @param string $key
86:      *
87:      * @return array
88:      */
89:     protected function keys($key)
90:     {
91:         return explode('.', $key);
92:     }
93: 
94: }
95: 
API documentation generated by ApiGen