Poznaję właśnie PHP i zastanawia mnie jedna rzecz. Dlaczego tak często używana jest metoda wykonywania zapytań w PDO z użyciem bindParam?
Argumentem przemawiającym za tą metodą jest przejrzystość kodu jaki otrzymujemy, jednak w zamian liczba znaków, które trzeba zapisać rośnie dość znacznie [ szczególnie przy dużej liczbie zmiennych w zapytaniu ].
Dlaczego więc stosować taki twór:
<?php $pdo->prepare( 'INSERT INTO sadf VALUES ( :val1, :val2, :val3 ) ' ); $sth->bindParam(':val1', $qwer, PDO::PARAM_STR); $sth->bindParam(':val2', $asdf, PDO::PARAM_STR); $sth->bindParam(':val3', $wer, PDO::PARAM_STR); $sth->execute(); ?>
zamiast krótszego, acz o wiele mniej przejrzystego:
<?php $pdo->exec( 'INSERT INTO sadf VALUES ( ''.$val1.'' , ''.$val2.'' , ''.$val3.'' )'); ?>
W czym to pierwsze lepsze jest od drugiego?
Z góry dziękuję za odpowiedzi.