Why In a photovoltaic cell, incoming light arrives as photons, and each photon's energy is transferred to an electron in the semiconductor's valence band. If the photon energy exceeds the material's bandgap, the electron absorbs it and jumps to the conduction band, leaving behind a hole. The junction's built-in field then separates that electron-hole pair, and the moving electrons form the cell's output current.
Watch out Photons are tempting because they are the light itself, but they are the carriers that deliver the energy, not the thing that absorbs it; holes are created as a byproduct of the absorption, and protons are locked in the nuclei and play no part.
Photons deliver, electrons receive. The particle that moves the current is the one that soaked up the light.