MySQLi по сути является объектным интерфейсом для MySQL API в пыхе. В свою очередь PDO это универсальный адаптер для работы с различными СУБД. Другими словами, если ты работаешь только с mysql базой, то можно смело глядеть в сторону mysqli, так как это тот же pdo, только без возможности смены СУБД, если же ты собираешься писать универсальную систему, независимую от СУБД (на пример работающую как с MySQL так и с PostgreSQL), то стоит использовать PDO, в котором конечно не так много плюшек для работы с MySQL, но зато есть возможность легко заменить одну СУБД другой без ковыряния в коде (простой сменой драйвера).
MySQLi является пакетом классов для работы именно с MySQL, в то время как PDO является набором классов для работы с любой СУБД, но естественно в MySQLi будет больше плюшек для работы, так как многие эти плюшки невозможно реализовать в PDO в связи с его кроссплатформенностью.