for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* @package WPEmerge
* @author Atanas Angelov <[email protected]>
* @copyright 2017-2019 Atanas Angelov
* @license https://www.gnu.org/licenses/gpl-2.0.html GPL-2.0
* @link https://wpemerge.com/
*/
namespace WPEmerge\View;
use WPEmerge\Support\Arr;
trait HasContextTrait {
* Context.
*
* @var array
protected $context = [];
* Get context values.
* @param string|null $key
* @param mixed|null $default
* @return mixed
public function getContext( $key = null, $default = null ) {
if ( $key === null ) {
return $this->context;
}
return Arr::get( $this->context, $key, $default );
* Add context values.
* @param string|array<string, mixed> $key
* @param mixed $value
* @return static $this
public function with( $key, $value = null ) {
if ( is_array( $key ) ) {
is_array
If this is a false-positive, you can also ignore this issue in your code via the ignore-call annotation
ignore-call
if ( /** @scrutinizer ignore-call */ is_array( $key ) ) {
$this->context = array_merge( $this->getContext(), $key );
} else {
$this->context[ $key ] = $value;
return $this;