php-firebird
php-firebird copied to clipboard
Ibase result
Sorry for large (again) pull request, it just happened 😬 Please test it thoroughly first.
Address issues:
- #75
- #79
- #80
- #81
- #84
- #87
- #89
Some other changes:
- Removed structs: ibase_result, ibase_statement and associated PHP resource types
- Precompute HashTable structures for ibase_fetch_() instead on each call
- Remove in_sqlda, out_sqlda double allocations
- Allocate NULL indication buffer per query instead per field
- Some code deduplication
- Introduce versioning and expose IBASE_VER constant, starting from 6.1.1
Backwards incomptible (kinda) changes:
- Broke the "test execute procedure" part of tests/006.phpt when
ibase_execute($query)is used afteribase_free_query($query). This is improper use anyway and only worked by accident due to how single returns from a procedure are handled. To illustrate this I addedtests/use_after_free-001.phptandtests/use_after_free-002.phpt.
Added Windows binaries: https://github.com/FirebirdSQL/php-firebird/releases/tag/v6.1.1-RC.0
Any feedback? I will merge then 😅