Reicht die Hexing-Eingabe aus, um SQL-Abfragen zu bereinigen?

Ich habe gestern Abend gelesen, wie man SQL-Injektionen verhindert, und habe folgende Antwort gefunden:

Wie kann ich SQL-Injection in PHP verhindern?

Die Kommentare von 'Your Common Sense' haben den Eindruck erweckt, dass dies nicht funktioniert / unsicher ist. In meinen (wenn auch begrenzten) Tests stellte ich jedoch fest, dass PHPs "bin2hex ($ var)" mit allem funktionierte, was ich anstellte - Literalzahl, Zahlenkette, Textkette -, selbst wenn eine numerische (tinyint) Spalte abgeglichen wurde.

Meine Frage lautet: Gibt es eine Möglichkeit, SQL zu injizieren, wenn jede Benutzereingabe durch Hexen bereinigt wird? Im Wesentlichen würde es bei jeder Abfrage so aussehen:

$query="SELECT * FROM table WHERE someidentifier=UNHEX('".bin2hex($unsafe_user_input)."') LIMIT 1"

Grundsätzlich übersetzen zu:

SELECT * FROM table WHERE someidentifier=UNHEX('0b99f') LIMIT 1

Gibt es Lücken in dieser Art von Sicherheit?

PS - Ich suche nicht nur nach Antworten wie "Warum nicht einfach PDO oder MySQLi mit vorbereiteten Anweisungen verwenden?" Es mag unter das große Übel der präventiven Optimierung fallen, aber ich möchte meinen Aufwand für Abfragen lieber nicht verdoppeln (und ja, ich verstehe, dass es mit mehreren identischen Abfragen schneller gehen kann, aber das ist keine Situation, auf die ich oft stoße).

Antworten auf die Frage(4)

Ihre Antwort auf die Frage