for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Quantum PHP Framework
*
* An open source software development framework for PHP
* @package Quantum
* @author Arman Ag. <[email protected]>
* @copyright Copyright (c) 2018 Softberg LLC (https://softberg.org)
* @link http://quantum.softberg.org/
* @since 2.8.0
*/
namespace Quantum\Libraries\Auth;
* Class User
* @package Quantum\Libraries\Auth
class User
{
* @var array
private $data = [];
* Set Data
* @param array $data
* @return $this
public function setData(array $data): self
$this->data = $data;
return $this;
}
* Get Data
* @return array
public function getData(): array
return $this->data;
* Get Fields
public function getFields(): array
return array_keys($this->data);
* Set Fields
* @param array $schema
public function setFields(array $schema): self
foreach ($schema as $field) {
if (isset($field['name'])) {
$this->data[$field['name']] = '';
* Get Field Value
* @param string $field
* @return string|null
public function getFieldValue(string $field): ?string
return $this->hasField($field) ? $this->data[$field] : null;
* Set Fields Value
* @param string|null $value
public function setFieldValue(string $field, ?string $value): self
$this->data[$field] = $value;
* Has Field
* @return bool
public function hasField(string $field): bool
return key_exists($field, $this->data);
* Gets the user property
* @param string $property
* @return mixed
public function __get(string $property)
return $this->getFieldValue($property);