Это случилось со мной также с PHP 5.4.1
Копирование поврежденной DLL везде не работало, и у меня не установлен PostgreSQL на сервере, но я также планировал использовать PHP для разных версий Postgres, поэтому единственное найденное мной решение заключалось в том, чтобы вставить httpd. конфиг такую строку:
LoadFile "C:/Program Files/PostgreSQL/8.4/bin/libpq.dll"
Но, ссылаясь на libpq.dll, который поставляется в комплекте с PHP, вот так:
LoadFile "C:/php/libpq.dll"
После этого он работал нормально для меня.