29 lines
		
	
	
		
			606 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			606 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
namespace nur\b\coll;
 | 
						|
 | 
						|
use nur\A;
 | 
						|
use nur\valm;
 | 
						|
use nur\valx;
 | 
						|
 | 
						|
trait TArrayTools {
 | 
						|
  function A__merge(...$arrays): void {
 | 
						|
    A::merge($this->data, ...$arrays);
 | 
						|
  }
 | 
						|
 | 
						|
  function A__select(?array $keys, $default=null): array {
 | 
						|
    return A::select($this->data, $keys, $default);
 | 
						|
  }
 | 
						|
 | 
						|
  function X__setAll($dest, ?array $keys=null): array {
 | 
						|
    $values = $this->A__select($keys);
 | 
						|
    valx::set_values($dest, $values);
 | 
						|
    return $values;
 | 
						|
  }
 | 
						|
 | 
						|
  function M__setAll($dest, ?array $keys=null): array {
 | 
						|
    $values = $this->A__select($keys);
 | 
						|
    valm::set_values($dest, $values);
 | 
						|
    return $values;
 | 
						|
  }
 | 
						|
}
 |