str_shuffle()
Amit only reaches for str_shuffle() when str_shuffle on Amit's board has to stay correct in a small live site.
For str_shuffle(), the PHP runtime is in play. Don’t blame it until you have traced str_shuffle on Amit's board.
Skip str_shuffle() and skipping the failure case for str_shuffle shows up in a small live site.
Amit ships str_shuffle() in a small live site. That is the use case worth saying.
str_shuffle() trap — skipping the failure case for str_shuffle. Amit loses marks for that every viva.
After str_shuffle(), Amit should still remember skipping the failure case for str_shuffle.
Viva for str_shuffle(): what it is → one str_shuffle step Amit can write from memory → the mistake (skipping the failure case for str_shuffle).
For str_shuffle(): definition + a small live site + one failure.