どうやら、以下のようにストアドプロシージャを BEGIN~END; で括って PL/SQL ブロックとして実行するのが正解のようです。
$sql = 'BEGIN sayHello(:name, :message); END;'; $stmt = oci_parse($conn,$sql); oci_bind_by_name($stmt,':name',$name,32); oci_bind_by_name($stmt,':message',$message,32); oci_execute($stmt);