I took Ted Sider's class at NYU, for which we used this book as the text. It is really an excellent intro to logic -- accessible without scrimping on technical details. It is also very comprehensive for a single-volume logic intro, covering many of the varieties of logic that are found in contemporary analytic philosophy.
Some caveats: firstly, this book is indeed an "intro" to some less-than-standard logics, but it is not an "intro" generally, and it really falls more squarely in the category of "intermediate" difficulty (filling a rather gaping hole in the available literature, between bare introduction and technical jungle). Readers looking for a purely beginning introduction to formal logic should look elsewhere (there is an abundance of good material at that level). Secondly, the purpose of the book is quite clearly to provide the technical equipment required for a working knowledge of certain logic-heavy areas of philosophy, and this book is not aimed particularly toward, say, mathematicians. That said, as an overview aimed at providing a solid groundwork for understanding the many flavors of logic one encounters in philosophical writing, it is probably the best book you can get, in my humble opinion. A solid second-place goes to that two-volume series by LTF Gamut, which is also quite widely available, and shares many of the same merits as this.