![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 159 Pomógł: 6 Dołączył: 2.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Chciałem sobie zrobić mini-profiler w klasie opartej o PDO.
A dokładniej to chodzi mi o to, że metoda queryString przy wykorzystaniu z pdo::prepare zwraca zapytanie w takiej postaci: "DELETE FROM test WHERE id IN(?, ?)" Chciałbym zrobić żeby podane w tablicy argumenty do zapytania były zamienione ze znakami '?' w kolejności, czyli tak to by wyglądało: "DELETE FROM test WHERE id IN(4, 5)"; Kombinowałem trochę na najprostszym sposobem tego rozwiązania np:
co oczywiście nie działa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) I się zastanawiam czy da się to uzyskać w kilku linijkach bez tworzenia pętli i przewijania zapytania po kolei po wszystkich argumentach do zamiany? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Podpinanie parametrów pod zapytanie jest realizowane przez PDO jedynie w sytuacji, kiedy baza danych nie obsługuje takiego rozwiązania. W pozostałych przypadkach rola PDO ogranicza się jedynie do wysłania zestawu danych oraz szkieletu zapytania do serwera i to on zajmuje się resztą. W ogóle operacja podpinania to coś więcej, niż zwykłe sklejenie wyjściowego zapytania z tablicy, dlatego też z PDO takiej informacji nie uzyskasz i musisz sobie sam posklejać wynik zwykłymi operacjami na tekście.
zaksmok -> a co Twoje "rozwiązanie" ma wspólnego z PDO? |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 18:41 |