modifs.mineures sans commentaires
This commit is contained in:
		
							parent
							
								
									30593623fb
								
							
						
					
					
						commit
						416d7a8972
					
				
							
								
								
									
										1
									
								
								.idea/nur-sery.iml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1
									
								
								.idea/nur-sery.iml
									
									
									
										generated
									
									
									
								
							@ -4,6 +4,7 @@
 | 
			
		||||
    <content url="file://$MODULE_DIR$">
 | 
			
		||||
      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="nur\sery\" />
 | 
			
		||||
      <sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" />
 | 
			
		||||
      <sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" packagePrefix="nur\sery\" />
 | 
			
		||||
      <excludeFolder url="file://$MODULE_DIR$/vendor" />
 | 
			
		||||
    </content>
 | 
			
		||||
    <orderEntry type="inheritedJdk" />
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,12 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\params;
 | 
			
		||||
 | 
			
		||||
use nur\b\values\Mparams;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class F: gestion unifiée des paramètres POST + GET
 | 
			
		||||
 */
 | 
			
		||||
class F extends Mparams {
 | 
			
		||||
class F {
 | 
			
		||||
  /** tester si le paramètre $name existe dans $_POST ou $_GET */
 | 
			
		||||
  static final function has($name): bool {
 | 
			
		||||
    if ($name === null || $name === false) return false;
 | 
			
		||||
@ -1,12 +1,13 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\params;
 | 
			
		||||
 | 
			
		||||
use nur\b\values\Mparams;
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class G: gestion des paramètres $_GET
 | 
			
		||||
 */
 | 
			
		||||
class G extends Mparams {
 | 
			
		||||
class G {
 | 
			
		||||
  /** tester si le paramètre $name existe */
 | 
			
		||||
  static final function has($name): bool {
 | 
			
		||||
    if ($name === null || $name === false) return false;
 | 
			
		||||
@ -15,7 +16,7 @@ class G extends Mparams {
 | 
			
		||||
 | 
			
		||||
  /** obtenir le paramètre $name */
 | 
			
		||||
  static final function get($name, $default=null, bool $trim=false) {
 | 
			
		||||
    $value = A::get($_GET, $name, $default);
 | 
			
		||||
    $value = cl::get($_GET, $name, $default);
 | 
			
		||||
    if ($trim) $value = str::trim($value);
 | 
			
		||||
    return $value;
 | 
			
		||||
  }
 | 
			
		||||
@ -1,12 +1,13 @@
 | 
			
		||||
<?php # -*- coding: utf-8 mode: php -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
 | 
			
		||||
namespace nur;
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur\sery\params;
 | 
			
		||||
 | 
			
		||||
use nur\b\values\Mparams;
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class P: gestion des paramètres $_POST
 | 
			
		||||
 */
 | 
			
		||||
class P extends Mparams {
 | 
			
		||||
class P {
 | 
			
		||||
  /** tester si le paramètre $name existe */
 | 
			
		||||
  static final function has($name): bool {
 | 
			
		||||
    if ($name === null || $name === false) return false;
 | 
			
		||||
@ -15,7 +16,7 @@ class P extends Mparams {
 | 
			
		||||
 | 
			
		||||
  /** obtenir le paramètre $name */
 | 
			
		||||
  static final function get($name, $default=null, bool $trim=false) {
 | 
			
		||||
    $value = A::get($_POST, $name, $default);
 | 
			
		||||
    $value = cl::get($_POST, $name, $default);
 | 
			
		||||
    if ($trim) $value = str::trim($value);
 | 
			
		||||
    return $value;
 | 
			
		||||
  }
 | 
			
		||||
@ -1,12 +1,13 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\params;
 | 
			
		||||
 | 
			
		||||
use nur\b\values\Mparams;
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class R: gestion des paramètres $_REQUEST (GET + POST + COOKIES)
 | 
			
		||||
 */
 | 
			
		||||
class R extends Mparams {
 | 
			
		||||
class R {
 | 
			
		||||
  /** tester si le paramètre $name existe */
 | 
			
		||||
  static final function has($name): bool {
 | 
			
		||||
    if ($name === null || $name === false) return false;
 | 
			
		||||
@ -15,7 +16,7 @@ class R extends Mparams {
 | 
			
		||||
 | 
			
		||||
  /** obtenir le paramètre $name */
 | 
			
		||||
  static final function get($name, $default=null, bool $trim=false) {
 | 
			
		||||
    $value = A::get($_REQUEST, $name, $default);
 | 
			
		||||
    $value = cl::get($_REQUEST, $name, $default);
 | 
			
		||||
    if ($trim) $value = str::trim($value);
 | 
			
		||||
    return $value;
 | 
			
		||||
  }
 | 
			
		||||
@ -1,8 +1,6 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur\sery\schema\input;
 | 
			
		||||
 | 
			
		||||
use nur\sery\schema\input\Input;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class FormInput: accès à des paramètres de formulaire (POST ou GET, dans cet
 | 
			
		||||
 * ordre)
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,6 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur\sery\schema\input;
 | 
			
		||||
 | 
			
		||||
use nur\sery\schema\input\Input;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class GetInput: accès à des paramètres de formulaire de type GET uniquement
 | 
			
		||||
 *
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,6 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur\sery\schema\input;
 | 
			
		||||
 | 
			
		||||
use nur\sery\schema\input\Input;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class PostInput: accès à des paramètres de formulaire de type POST uniquement
 | 
			
		||||
 *
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,11 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\values;
 | 
			
		||||
 | 
			
		||||
use ArrayAccess;
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class akey: des outils pour accéder aux valeurs d'un tableau
 | 
			
		||||
 * Class akey: accéder aux valeurs d'un tableau
 | 
			
		||||
 *
 | 
			
		||||
 * @see valx
 | 
			
		||||
 */
 | 
			
		||||
@ -15,8 +16,8 @@ class akey {
 | 
			
		||||
      if ($array->offsetExists($key)) return $array->offsetGet($key);
 | 
			
		||||
      else return $default;
 | 
			
		||||
    } else {
 | 
			
		||||
      if (!is_array($array)) $array = A::with($array);
 | 
			
		||||
      return A::get($array, $key, $default);
 | 
			
		||||
      if (!is_array($array)) $array = cl::with($array);
 | 
			
		||||
      return cl::get($array, $key, $default);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -25,7 +26,7 @@ class akey {
 | 
			
		||||
    if ($array instanceof ArrayAccess) {
 | 
			
		||||
      $array->offsetSet($key, $value);
 | 
			
		||||
    } else {
 | 
			
		||||
      A::set($array, $key, $value);
 | 
			
		||||
      cl::set($array, $key, $value);
 | 
			
		||||
    }
 | 
			
		||||
    return $value;
 | 
			
		||||
  }
 | 
			
		||||
@ -45,8 +46,8 @@ class akey {
 | 
			
		||||
      $array->offsetSet($key, ++$value);
 | 
			
		||||
      return $value;
 | 
			
		||||
    } else {
 | 
			
		||||
      A::ensure_array($array);
 | 
			
		||||
      $value = (int)A::get($array, $key);
 | 
			
		||||
      cl::ensure_array($array);
 | 
			
		||||
      $value = (int)cl::get($array, $key);
 | 
			
		||||
      return $array[$key] = ++$value;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@ -58,8 +59,8 @@ class akey {
 | 
			
		||||
      if ($allow_negative || $value > 0) $array->offsetSet($key, --$value);
 | 
			
		||||
      return $value;
 | 
			
		||||
    } else {
 | 
			
		||||
      A::ensure_array($array);
 | 
			
		||||
      $value = (int)A::get($array, $key);
 | 
			
		||||
      cl::ensure_array($array);
 | 
			
		||||
      $value = (int)cl::get($array, $key);
 | 
			
		||||
      if ($allow_negative || $value > 0) $array[$key] = --$value;
 | 
			
		||||
      return $value;
 | 
			
		||||
    }
 | 
			
		||||
@ -72,11 +73,11 @@ class akey {
 | 
			
		||||
  static final function merge(&$array, $key, $merge): void {
 | 
			
		||||
    if ($array instanceof ArrayAccess) {
 | 
			
		||||
      $value = $array->offsetGet($key);
 | 
			
		||||
      A::merge($value, $merge);
 | 
			
		||||
      cl::merge($value, $merge);
 | 
			
		||||
      $array->offsetSet($key, $value);
 | 
			
		||||
    } else {
 | 
			
		||||
      A::ensure_array($array);
 | 
			
		||||
      A::merge($array[$key], $merge);
 | 
			
		||||
      cl::ensure_array($array);
 | 
			
		||||
      cl::merge($array[$key], $merge);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -87,11 +88,11 @@ class akey {
 | 
			
		||||
  static final function append(&$array, $key, $value): void {
 | 
			
		||||
    if ($array instanceof ArrayAccess) {
 | 
			
		||||
      $value = $array->offsetGet($key);
 | 
			
		||||
      A::set($value, null, $value);
 | 
			
		||||
      cl::set($value, null, $value);
 | 
			
		||||
      $array->offsetSet($key, $value);
 | 
			
		||||
    } else {
 | 
			
		||||
      A::ensure_array($array);
 | 
			
		||||
      A::set($array[$key], null, $value);
 | 
			
		||||
      cl::ensure_array($array);
 | 
			
		||||
      cl::set($array[$key], null, $value);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,17 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\values;
 | 
			
		||||
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
use ReflectionClass;
 | 
			
		||||
use ReflectionException;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class prop: des outils pour accéder aux propriétés d'un objet. la différence
 | 
			
		||||
 * avec {@link oprop} est qu'une tentative est effectuée pour accéder d'abord à
 | 
			
		||||
 * la propriété via une méthode normalisée
 | 
			
		||||
 * Class mprop: accéder aux propriétés d'un objet. la différence avec
 | 
			
		||||
 * {@link oprop} est qu'une tentative est effectuée pour accéder d'abord à la
 | 
			
		||||
 * propriété via une méthode normalisée
 | 
			
		||||
 *
 | 
			
		||||
 * @see valx
 | 
			
		||||
 */
 | 
			
		||||
class prop {
 | 
			
		||||
class mprop {
 | 
			
		||||
  static function split_prefix_name(string $name): array {
 | 
			
		||||
    preg_match('/^(_*)(.*)/', $name, $ms);
 | 
			
		||||
    return [$ms[1], $ms[2]];
 | 
			
		||||
@ -103,8 +105,8 @@ class prop {
 | 
			
		||||
   * nécessaire
 | 
			
		||||
   */
 | 
			
		||||
  static final function merge(object $object, string $property, $array): void {
 | 
			
		||||
    $values = A::with(self::get($object, $property));
 | 
			
		||||
    A::merge($values, A::with($array));
 | 
			
		||||
    $values = cl::with(self::get($object, $property));
 | 
			
		||||
    cl::merge($values, cl::with($array));
 | 
			
		||||
    self::set($object, $property, $values);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -113,7 +115,7 @@ class prop {
 | 
			
		||||
   * nécessaire
 | 
			
		||||
   */
 | 
			
		||||
  static final function append(object $object, string $property, $value): void {
 | 
			
		||||
    $values = A::with(self::get($object, $property));
 | 
			
		||||
    $values = cl::with(self::get($object, $property));
 | 
			
		||||
    $values[] = $value;
 | 
			
		||||
    self::set($object, $property, $values);
 | 
			
		||||
  }
 | 
			
		||||
@ -1,11 +1,12 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\values;
 | 
			
		||||
 | 
			
		||||
use nulib\cl;
 | 
			
		||||
use ReflectionClass;
 | 
			
		||||
use ReflectionException;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class oprop: des outils pour accéder aux propriétés d'un objet
 | 
			
		||||
 * Class oprop: accéder aux propriétés d'un objet
 | 
			
		||||
 *
 | 
			
		||||
 * @see valx
 | 
			
		||||
 */
 | 
			
		||||
@ -111,16 +112,16 @@ class oprop {
 | 
			
		||||
    try {
 | 
			
		||||
      $p = $c->getProperty($property);
 | 
			
		||||
      $p->setAccessible(true);
 | 
			
		||||
      $values = A::with($p->getValue($object));
 | 
			
		||||
      A::merge($values, A::with($array));
 | 
			
		||||
      $values = cl::with($p->getValue($object));
 | 
			
		||||
      cl::merge($values, cl::with($array));
 | 
			
		||||
      $p->setValue($object, $values);
 | 
			
		||||
    } catch (ReflectionException $e) {
 | 
			
		||||
      if (property_exists($object, $property)) {
 | 
			
		||||
        $values = A::with($object->$property);
 | 
			
		||||
        $values = cl::with($object->$property);
 | 
			
		||||
      } else {
 | 
			
		||||
        $values = [];
 | 
			
		||||
      }
 | 
			
		||||
      A::merge($values, A::with($array));
 | 
			
		||||
      cl::merge($values, cl::with($array));
 | 
			
		||||
      $object->$property = $values;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@ -134,12 +135,12 @@ class oprop {
 | 
			
		||||
    try {
 | 
			
		||||
      $p = $c->getProperty($property);
 | 
			
		||||
      $p->setAccessible(true);
 | 
			
		||||
      $values = A::with($p->getValue($object));
 | 
			
		||||
      $values = cl::with($p->getValue($object));
 | 
			
		||||
      $values[] = $value;
 | 
			
		||||
      $p->setValue($object, $values);
 | 
			
		||||
    } catch (ReflectionException $e) {
 | 
			
		||||
      if (property_exists($object, $property)) {
 | 
			
		||||
        $values = A::with($object->$property);
 | 
			
		||||
        $values = cl::with($object->$property);
 | 
			
		||||
      } else {
 | 
			
		||||
        $values = [];
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,13 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\values;
 | 
			
		||||
 | 
			
		||||
use ArrayAccess;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class valm: frontend pour accéder à une propriété d'un objet (par une méthode
 | 
			
		||||
 * normalisée ou en direct) ou à la clé d'un tableau. cette classe utilise
 | 
			
		||||
 * {@link prop} ou {@link akey} en fonction de la nature de la cible
 | 
			
		||||
 * {@link mprop} ou {@link akey} en fonction de la nature de la cible
 | 
			
		||||
 *
 | 
			
		||||
 * si la cible est un objet, les noms des clés sont transformés en camelCase
 | 
			
		||||
 * pour avoir les propriétés correspondantes
 | 
			
		||||
@ -15,7 +16,7 @@ class valm {
 | 
			
		||||
  static final function get($src, $name, $default=null) {
 | 
			
		||||
    if (is_object($src) && !($src instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      return prop::get($src, $name, $default);
 | 
			
		||||
      return mprop::get($src, $name, $default);
 | 
			
		||||
    } else {
 | 
			
		||||
      return akey::get($src, $name, $default);
 | 
			
		||||
    }
 | 
			
		||||
@ -24,7 +25,7 @@ class valm {
 | 
			
		||||
  static final function set(&$dest, $name, $value) {
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      return prop::set($dest, $name, $value);
 | 
			
		||||
      return mprop::set($dest, $name, $value);
 | 
			
		||||
    } else {
 | 
			
		||||
      return akey::set($dest, $name, $value);
 | 
			
		||||
    }
 | 
			
		||||
@ -39,7 +40,7 @@ class valm {
 | 
			
		||||
  static final function set_values(&$dest, ?array $values): void {
 | 
			
		||||
    if ($values === null) return;
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      prop::set_values($dest, $values);
 | 
			
		||||
      mprop::set_values($dest, $values);
 | 
			
		||||
    } else {
 | 
			
		||||
      akey::set_values($dest, $values);
 | 
			
		||||
    }
 | 
			
		||||
@ -48,7 +49,7 @@ class valm {
 | 
			
		||||
  static final function inc(&$dest, $name): int {
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      return prop::inc($dest, $name);
 | 
			
		||||
      return mprop::inc($dest, $name);
 | 
			
		||||
    } else {
 | 
			
		||||
      return akey::inc($dest, $name);
 | 
			
		||||
    }
 | 
			
		||||
@ -57,7 +58,7 @@ class valm {
 | 
			
		||||
  static final function dec(&$dest, $name): int {
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      return prop::dec($dest, $name);
 | 
			
		||||
      return mprop::dec($dest, $name);
 | 
			
		||||
    } else {
 | 
			
		||||
      return akey::dec($dest, $name);
 | 
			
		||||
    }
 | 
			
		||||
@ -66,7 +67,7 @@ class valm {
 | 
			
		||||
  static final function merge(&$dest, $name, $merge): void {
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      prop::merge($dest, $name, $merge);
 | 
			
		||||
      mprop::merge($dest, $name, $merge);
 | 
			
		||||
    } else {
 | 
			
		||||
      akey::merge($dest, $name, $merge);
 | 
			
		||||
    }
 | 
			
		||||
@ -75,7 +76,7 @@ class valm {
 | 
			
		||||
  static final function append(&$dest, $name, $value): void {
 | 
			
		||||
    if (is_object($dest) && !($dest instanceof ArrayAccess)) {
 | 
			
		||||
      $name = str::us2camel($name);
 | 
			
		||||
      prop::append($dest, $name, $value);
 | 
			
		||||
      mprop::append($dest, $name, $value);
 | 
			
		||||
    } else {
 | 
			
		||||
      akey::append($dest, $name, $value);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,8 @@
 | 
			
		||||
<?php
 | 
			
		||||
namespace nur;
 | 
			
		||||
namespace nur\sery\values;
 | 
			
		||||
 | 
			
		||||
use ArrayAccess;
 | 
			
		||||
use nulib\str;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class valx: frontend pour accéder à une propriété d'un objet ou à la clé
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user