9d79dd4af402f92f08eaec4180fe1cad739865f5
DB/SQL/Pgsql: add __dbConnectionBusySocketWait for testing with loop type and socket check wait loop for async queries. (TODO) add parameter query method to supplement current normal query only function DB/IO: Make all class variables private and add needed methods to read them. Also add method for reset query in case for new calls. db error/warnings are written to proper history file with timestamp, source, etc. Update source (where called) to show the whole method stack. Move connection OK to method to easy switch to different connection open for queries check type. Never use method variable query, instead only use method parameter and error out on not set. All core calls reset errors and set error hash id for history. Bug fix for insert data return array and reset said array every time a query execution is started and not only if we have some return data to avoid having wrong (previous query) data for a new query. Add more error info to all erros where a separate db logging call was done.: ACL/Login: Do not access DB IO cursor variable directly but use method to read data. Fixes change for hash type
PHP Core Library
Code Standard
- Uses PSR-12
- tab indent instead of 4 spaces indent
- Warning at 120 character length, error at 240 character length
General information
Base PHP class files to setup any project
- login
- database wrapper
- basic helper class for debugging and other features
- admin/frontend split
- domain controlled database/settings split
- dynamic layout groups
NOTE
There are three branches:
master
The active branch, which is the namespace branch. Currently compatible with PHP 7.4 and 8.0
legacy
The old non namepsace format layout. This is fully deprecated and will no longer be maintaned. last tested PHP 5.6 and PHP 7.0
development
Any current development is done here
Static checks
With phpstan (4dev/checking/phpstan.sh)
phpstan
With phan (4dev/checking/phan.sh)
phan --progress-bar -C --analyze-twice
pslam is setup but not configured
Unit tests
With phpunit (4dev/checking/phpunit.sh)
phpunit -c $phpunit.xml 4dev/tests/
Other Notes
Session used
The following classes use _SESSION The main one is ACL\Login, this class will fail without a session started
- \CoreLibs\ACL\Login
- \CoreLibs\Admin\Backend
- \CoreLibs\Output\Form\Generate
- \CoreLibs\Output\Form\Token
- \CoreLibs\Template\SmartyExtend
Class extends
The following classes extend these classes
- \CoreLibs\ACL\Login extends \CoreLibs\DB\IO
- \CoreLibs\Admin\Backend extends \CoreLibs\DB\IO
- \CoreLibs\DB\Extended\ArrayIO extends \CoreLibs\DB\IO
- \CoreLibs\Output\Form\Generate extends \CoreLibs\DB\Extended\ArrayIO
- \CoreLibs\Template\SmartyExtend extends SmartyBC
Class used
The following classes use the following classes
- \CoreLibs\ACL\Login uses \CoreLibs\Debug\Logger, \CoreLibs\Language\L10n
- \CoreLibs\DB\IO uses \CoreLibs\Debug\Logger, \CoreLibs\DB\SQL\PgSQL
- \CoreLibs\Admin\Backend uses \CoreLibs\Debug\Logger, \CoreLibs\Language\L10n
- \CoreLibs\Output\Form\Generate uses \CoreLibs\Debug\Logger, \CoreLibs\Language\L10n
- \CoreLibs\Template\SmartyExtend uses \CoreLibs\Language\L10n
- \CoreLibs\Language\L10n uses FileReader, GetTextReader
Languages
JavaScript
51.6%
PHP
42.3%
PLpgSQL
2.2%
CSS
1.6%
Smarty
0.7%
Other
1.6%