Skip to content

Instantly share code, notes, and snippets.

@AndrianD
Created January 20, 2015 20:28
Show Gist options
  • Select an option

  • Save AndrianD/40eb6985fb87b81faf41 to your computer and use it in GitHub Desktop.

Select an option

Save AndrianD/40eb6985fb87b81faf41 to your computer and use it in GitHub Desktop.
ProduitEntity
<?php
class ProduitEntity
{
//+---------------------------------
// GET - Propriétés Privées Validées
private $id_produit,
$url,
$marque,
$nom,
$description,
$genre,
$style,
$couleur,
$prix,
$stock;
//+-------------------------------------
// BDD - Propriétés Privées Non-Validées
public function validate()
{
foreach($this as $k => $v)
{
if(isset($v))
{
$get = "get" . ucfirst($k) ;
$result[$k] = $this->$get() ;
}
}
if(!empty($result))
{
return $result ;
}
else
{
return false ;
}
}
public function proprietes()
{
foreach($this as $k => $v)
{
if(isset($v))
{
$result[$k] = $v ;
}
}
if(!empty($result))
{
return $result ;
}
else
{
return false ;
}
}
public function setId_Produit($id_produit)
{
if(isset($id_produit))
{
$this->id_produit = intval($id_produit) ;
return true ;
}
else
{
return false ;
}
}
public function setUrl($url)
{
if(isset($url))
{
if(!empty($url) && strlen($url) >= 2)
{
$this->url = $url ;
return false ;
}
else
{
return 'Champs URL vide ou inférieur à 3 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument URL' ;
}
}
public function setMarque($marque)
{
if(isset($marque))
{
if(!empty($marque) && strlen($marque) >= 2)
{
$this->marque = $marque ;
return false ;
}
else
{
return 'Champs MARQUE vide ou inférieur à 3 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument MARQUE' ;
}
}
public function setNom($nom)
{
if(isset($nom))
{
if(!empty($nom) && strlen($nom) >= 2)
{
$this->nom = $nom ;
return false ;
}
else
{
return 'Champs NOM vide ou inférieur à 3 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument NOM' ;
}
}
public function setDescription($description)
{
if(isset($description))
{
if(!empty($description) && strlen($description) >= 10)
{
$this->description = $description ;
return false ;
}
else
{
return 'Champs DESCRIPTION vide ou inférieur à 10 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument DESCRIPTION' ;
}
}
public function setGenre($genre)
{
if(isset($genre))
{
if(!empty($genre) && ($genre == "homme" || $genre == "femme" || $genre == "enfant") )
{
$this->genre = $genre ;
return false ;
}
else
{
return 'Champs GENRE invalide (homme, femme, enfant)' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument GENRE' ;
}
}
public function setStyle($style)
{
if(isset($style))
{
if(!empty($style) && strlen($style) >= 2)
{
$this->style = $style ;
return false ;
}
else
{
return 'Champs STYLE vide ou inférieur à 3 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument STYLE' ;
}
}
public function setCouleur($couleur)
{
if(isset($couleur))
{
if(!empty($couleur) && strlen($couleur) >= 2)
{
$this->couleur = $couleur ;
return false ;
}
else
{
return 'Champs COULEUR vide ou inférieur à 3 lettres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument COULEUR' ;
}
}
public function setPrix($prix)
{
if(isset($prix))
{
if(!empty($prix) && strlen($prix) >= 2)
{
$espace = strpos($prix, ' ', 1);
if($espace !== false)
{
return 'Votre prix ne doit pas contenir d\'espaces.' ;
}
$nombre = is_numeric($prix) ;
if(!$nombre)
{
return 'Votre prix ne doit contenir que des chiffres. <i>(pas de caractères spéciaux, de virgules, de points ...)</i>' ;
}
$this->prix = $prix*1 ;
return false ;
}
else
{
return 'Champs PRIX vide ou inférieur à 3 chiffres' ;
}
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument PRIX' ;
}
}
public function setStock($stock)
{
if(isset($stock))
{
$espace = strpos($stock, ' ', 1);
if($espace !== false)
{
return 'Votre STOCK ne doit pas contenir d\'espaces.' ;
}
$nombre = is_numeric($stock) ;
if($nombre === false)
{
return 'Votre STOCK ne doit contenir que des chiffres. <i>(pas de caractères spéciaux, de virgules, de points ...)</i>' ;
}
$this->stock = $stock*1 ;
return false ;
}
else
{
return 'Erreur inconnue lors de la transmission de l\'argument STOCK' ;
}
}
###################Respective Getters#################################
//+----------------------------
public function getId_Produit()
{
if (empty($this->id_produit))
{
return null ;
}
else
{
return $this->id_produit ;
}
}
public function getUrl()
{
if (empty($this->url))
{
return null ;
}
else
{
return $this->url ;
}
}
public function getMarque()
{
if (empty($this->marque))
{
return null ;
}
else
{
return $this->marque ;
}
}
public function getNom()
{
if (empty($this->nom))
{
return null ;
}
else
{
return $this->nom ;
}
}
public function getDescription()
{
if (empty($this->description))
{
return null ;
}
else
{
return $this->description ;
}
}
public function getGenre()
{
if (empty($this->genre))
{
return null ;
}
else
{
return $this->genre ;
}
}
public function getStyle()
{
if (empty($this->style))
{
return null ;
}
else
{
return $this->style ;
}
}
public function getCouleur()
{
if (empty($this->couleur))
{
return null ;
}
else
{
return $this->couleur ;
}
}
public function getPrix()
{
if (empty($this->prix))
{
return null ;
}
else
{
return $this->prix ;
}
}
public function getStock()
{
if (empty($this->stock))
{
return null ;
}
else
{
return $this->stock ;
}
}
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment