Méthode Sql::Sql_concat()

Sql_concat
sql_concat — Concatène deux ou plusieurs chaines


Description



Code PHP :
string Sql_concat(string $string1 [, string $string2, ...])


Cette méthode de la classe SQL permet de concaténer toutes les chaînes de caractères $string_i entre elles.

Attention au format des arguments!

Contrat de cohérence






Exemple de paramètres valides



champ SQL chaine PHP
Code PHP :
$champSQL = "id";
Code PHP :
$strPHP = "'ma chaine'";
Code PHP :
$champSQL = 'id';
Code PHP :
$strPHP='\'ma chaine\'';


Valeur de retour




Cette fonction retourne une chaîne structurée en fonction du SGBD pour concaténer des chaînes de caractères PHP avec des champs de tables SQL ou des chaînes de caractères.


Exemple 1




Code PHP :
 
$result = $Sql->Query_while("SELECT t.title ".$Sql->Sql_concat("'../forum/topic.php?id='", 't.id', "'#m'", 'msg.id')."  AS `link`
            FROM ".PREFIX."forum_msg msg
            JOIN ".PREFIX."forum_topics t ON t.id = msg.idtopic");
 
while( $row = $Sql->Sql_fetch_assoc($result) )
{
	echo '<a href="'.$row['link'].'">'.$row['title'].'</a><br />';
}
$Sql->Close($result);
 
// Affiche un lien vers tous les message du forum
 
// Ici la méthode Sql_concat va renvoyé une chaine de la forme '../forum/topic.php?id=TTT#mMMM'
// avec TTT id de topic et MMM id de message.
 


On remarquera ici que "'../forum/topic.php?id='" et "'#m'" sont entourés de double, puis de simple quotes alors que 't.id' et 'msg.id' ne sont entourés que de simple quotes.

Ceci signifie que t.id et m.id sont des champs de la requête alors que "'../forum/topic.php?id='" et "'#m'" sont des chaînes de caractères générées par PHP.