Spiky Eared Pichu can only be obtained via an event that has now passed. It required a shiny Pichu that was given out via wifi.
Spiky Eared Pichu
As for a normal Pichu, you can't catch them in SS, so you will need to breed a Pikachu/ Raichu. You can get the former in Viridian Forest, and the latter you can only obtain by evolving Raichu.