13.6.3.25 Doc::getRawValue()
13.6.3.25.1 Description
string getRawValue ( string $idAttribute, mixed $defaultValue = "" )
Cette méthode retourne la valeur d'un attribut telle qu'elle est inscrite en base de données. Le type retourné est toujours une chaîne de caractères quel que soit le type d'attribut.
13.6.3.25.1.1 Avertissements
Aucun.
13.6.3.25.2 Liste des paramètres
- (string)
idAttribute
- Identifiant de l'attribut
- (string)
defaultValue
- Valeur par défaut à retourner si la valeur est vide ou si l'attribut n'existe pas
13.6.3.25.3 Valeur de retour
Si l'attribut du document existe et s'il n'est pas vide, sa valeur brute est retournée.
Cette méthode retourne tout attribut de la classe sans vérification. Si cet attribut est non existant ou vide alors c'est la valeur par défaut qui sera retournée.
13.6.3.25.4 Erreurs / Exceptions
Aucune erreur retournée.
13.6.3.25.5 Historique
Cette méthode était anciennement nommée getValue
.
13.6.3.25.6 Exemples
Soit la famille suivante :
BEGIN | Ma famille | MYFAMILY | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
CLASS | My\MyFamily | ||||||||||
// | idattr | idframe | label | T | A | type | ord | vis | … | phpfunc | |
ATTR | MY_IDENTIFICATION | Identification | N | N | frame | 10 | W | ||||
ATTR | MY_NUMBERONE | MY_IDENTIFICATION | nombre 1 | Y | N | int | 20 | W | |||
ATTR | MY_NUMBERTWO | MY_IDENTIFICATION | nombre 2 | N | N | int | 30 | W | |||
ATTR | MY_SUM | MY_IDENTIFICATION | nombre 1+2 | N | N | int | 30 | R | ::mySum(MY_NUMBERONE, MY_NUMBERTWO) | ||
END |
Utilisation des valeurs de my_numberone
et my_numbertwo
pour la méthode
mySum
de l'attribut calculé my_sum
.
Avec la classe :
namespace My; use \Dcp\AttributeIdentifiers\MyFamily as MyAttributes; class MyFamily extends \Dcp\Family\Document { public function mySum($x, $y) { $n1 = intval($this->getRawValue(MyAttributes::my_numberone)); // si "my_number_two" est vide, alors, la valeur sera 543 $n2 = intval($this->getRawValue(MyAttributes::my_numbertwo, "543"));
return ($n1 + $n2); } }
Vérification de l'attribut my_sum
en fonction des valeurs de my_numberone
et
my_numbertwo
use \Dcp\AttributeIdentifiers\MyFamily as Attributes\MyFamily; /** @var \Dcp\Family\MyFamily */ $myDoc = new_Doc("", "MY_DOCUMENT"); if ($myDoc->isAlive()) { $n1=intval($myDoc->getRawValue(Attributes\MyFamily::my_numberone)); $n2=intval($myDoc->getRawValue(Attributes\MyFamily::my_numbertwo, "543")); $sum=intval($myDoc->getRawValue(Attributes\MyFamily::my_sum)); if ($sum != ($n1 +$n2)) { printf("La somme est incorrecte : %d + %d <> %d ! \n", $n1, $n2, $sum); } }
13.6.3.25.7 Notes
Format brut en fonction des types d'attributs :
date
- les dates sont retournées sous la forme "YYYY-MM-DD".
timestamp
- les horo-dates sont retournées sous la forme "YYYY-MM-DD HH:MM:SS".
time
- les temps sont retournés sous la forme "HH:MM:SS".
-
file
,image
- les pointeurs de fichiers sous la forme "[mimeType]|[vaultId]|[fileName]"
htmltext
- le texte retourné est un fragment html dont les entités html (caractères accentués notamment) ont été convertis en caractères utf-8.
Pour les autres types, aucun formatage spécial n'est appliqué, la valeur brute correspond à la valeur donnée.
Pour les valeurs multiples, chaque valeur est séparée par le caractère \n
(retour chariot). Si une des valeurs multiples contient un retour chariot,
celui-ci est remplacé par les caractères <BR>
.
Pour les multiples à 2 niveaux (attribut multiple dans un tableau), le premier
niveau a comme séparateur le caractère '\n' et le deuxième niveau les caractères
"
".
Exemple : "1234\n567<BR>8876<BR>987\n678<BR>295
"
indique la structure à 2 niveaux suivante :
- -
- 1234
- -
- 567
- 8876
- 987
- -
- 678
- 295