I played around with it some more, it turns out if i indicate that the value i am binding is a blob,
it doesn't re-encode the string when i pass it to the database.
I just thought i would post that here, incase someone else comes looking at this thread
$success = sasql_stmt_bind_param($stmt, 'b', $val);
So I can store utf-8 in an nvchar column as long as it is sent as a blob