I Heredoc Syntax bevorzugen, obwohl Nowdoc auch für Ihr Beispiel funktionieren würde:
Heredoc:
http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc
Nowdoc: http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.nowdoc
Der Vorteil bei beiden ist y Sie können gerade SQL in und aus diesem Block kopieren und einfügen, ohne es zu entweichen oder zu formatieren. Wenn Sie das Parsen einbeziehen müssten, wie Sie es mit Variablen aus einer Zeichenfolge in doppelten Anführungszeichen tun würden, würden Sie Heredoc verwenden. Nowdoc verhält sich wie einfache Anführungszeichen.
Nowdoc:
public function findSomethingByFieldNameId($Id) {
$sql = <<<'SQL'
SELECT field1, field2, field3 as Field3_Something, field4, field5, field6, field7, field8, field9
FROM table
JOIN table2 AS TNS ON TNS.id = table.id
WHERE something = 1
SQL;
return $this->db->fetchData($sql, null, 'all');
}
Heredoc:
public function findSomethingByFieldNameId($Id) {
$sql = <<<SQL
SELECT field1, field2, field3 as Field3_Something, field4, field5, field6, field7, field8, field9
FROM table
JOIN table2 AS TNS ON TNS.id = table.id
WHERE something = '$Id'
SQL;
$sql = mysql_real_escape_string($sql);
return $this->db->fetchData($sql, null, 'all');
}
Können Sie genauer hier sein? – AnandPhadke
Sie haben hier einige solide Vorschläge - warum wählen Sie nicht eine als akzeptierte Antwort? –
Sicherlich nach 6 Monaten ist eine Antwort gerechtfertigt. Wählen Sie einen der folgenden Vorschläge. – philwinkle