TokyoTyrantTable::putKeep

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::putKeepEnregistre un nouvel enregistrement

Description

public void TokyoTyrantTable::putKeep ( string $key , array $columns )

Enregistre un nouvel enregistrement dans la base de données. Si la clé existe déjà, la méthode lancera une exception indiquant qu'un enregistrement référencé sous cette clé existe déjà dans la base de données.

Liste de paramètres

key

La clé primaire de la ligne, ou NULL.

columns

Tableau contenant les données de la ligne.

Valeurs de retour

Retourne la clé primaire et lance une exception TokyoTyrantException si une erreur survient.

Exemples

Exemple #1 Exemple avec TokyoTyrantTable::putKeep()

<?php
/* Connexion à la base de données */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passage de la valeur null pour générer un nouvel identifiant unique */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Récupère la ligne précédente */
var_dump($tt->get($index));

try {
	$tt->putKeep($index, array("column1" => "something new", "new_column" => "other data"));
} catch (TokyoTyrantException $e) {
	if ($e->getCode() === TokyoTyrant::TTE_KEEP) {
		echo "Existing record! Not modified\n";
	} else {
		echo "Error: " , $e->getMessage() , "\n"; 
	}
}

/* Récupère la ligne précédente */
var_dump($tt->get($index));
?>

L'exemple ci-dessus va afficher quelque chose de similaire à :

array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}
Existing record! Not modified
array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}

Voir aussi

LoadingChargement en cours