Subversion Repositories eFlore/Applications.cel

Rev

Rev 2419 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2419 Rev 2430
Line 14... Line 14...
14
 * @copyright  1999-2014 Tela Botanica <accueil@tela-botanica.org>
14
 * @copyright  1999-2014 Tela Botanica <accueil@tela-botanica.org>
15
 */
15
 */
16
class SqlUtil {
16
class SqlUtil {
Line 17... Line 17...
17
 
17
 
-
 
18
	public static function extraireRequetes($contenuSql) {
18
	public static function extraireRequetes($contenuSql) {
19
		$contenuSansCommentaire = self::supprimerCommentaires($contenuSql);
19
		$requetesExtraites = preg_split("/;\e*\t*\r*\n/", $contenuSql);
20
		$requetesExtraites = preg_split("/;\e*\t*\r*\n/", $contenuSansCommentaire);
20
		if (count($requetesExtraites) == 0){
21
		if (count($requetesExtraites) == 0){
21
			throw new Exception("Aucune requête n'a été trouvée dans le fichier SQL : $cheminFichierSql");
22
			throw new Exception("Aucune requête n'a été trouvée dans le contenu SQL.");
Line 22... Line 23...
22
		}
23
		}
23
 
24
 
24
		$requetes = array();
25
		$requetes = array();
25
		foreach ($requetesExtraites as $requete) {
26
		foreach ($requetesExtraites as $requete) {
26
			if (trim($requete) != '') {
27
			if (trim($requete) != '') {
27
				$requetes[] = rtrim(trim($requete), ';');
28
				$requetes[] = rtrim(trim($requete), ';');
28
			}
29
			}
29
		}
30
		}
-
 
31
		return $requetes;
-
 
32
	}
-
 
33
 
-
 
34
	private static function supprimerCommentaires($contenuSql) {
30
		return $requetes;
35
		return preg_replace('/(## |--).*?\r*\n/', '', $contenuSql);
31
	}
36
	}