| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.137.1.el8_10.x86_64 #1 SMP Wed Jun 24 11:40:24 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/cwd/wp-content/plugins/cornerstone/includes/classes/Util/ |
Upload File : |
<?php
namespace Themeco\Cornerstone\Util;
class StringPath {
public $data;
public function data($data) {
$this->data = $data;
return $this;
}
public function get($path) {
if ( ! is_array( $this->data ) || ! is_string( $path ) ) {
return null;
}
$paths = array_reverse( explode('.', $path) );
$current = $this->data;
try {
while( count($paths) > 0 ) {
$current = $this->resolvePath( $current, array_pop($paths) );
}
} catch (\Exception $e) {
return null;
}
return $current;
}
public function resolvePath($data, $path) {
if ( is_array($data)) {
if ($path === '') {
return $data;
}
if (isset($data[$path])) {
return $data[$path];
}
if ($path === '$end') { // keyword to access last item in array
return $data[count($data) -1];
}
$numeric_path = (int) $path;
if ($numeric_path == $path) { // convert numeric indexes
if (isset($data[$numeric_path])) {
return $data[$numeric_path];
}
}
}
throw new \Exception;
}
}