PHP 8 scan of /config/workspace/projects/PHP 8 Migration /companies generated 2026-08-05 14:39:59 on PHP 8.3.6 ======================================================================== 41 files scanned (.php .inc .html .htm) [95] A bareword array key (HARD FATAL) [14] B conditionally-initialised array (FATAL) [56] C count() on a possibly-unset variable [1] D division by a possibly-zero variable (FATAL) ------------------------------------------------------------------------ ## A bareword array key (HARD FATAL) (95) 85-1516155235/plugins/testandtag/clientEditSave.php :25 $...[lecsafe_message] -> $...['lecsafe_message'] Price_Pricebook.html :106 $...[address] -> $...['address'] :108 $...[phone] -> $...['phone'] :131 $...[company] -> $...['company'] :132 $...[telephone] -> $...['telephone'] :132 $...[telephone] -> $...['telephone'] :133 $...[email] -> $...['email'] :133 $...[email] -> $...['email'] :134 $...[invAddress] -> $...['invAddress'] :134 $...[invAddress] -> $...['invAddress'] :145 $...[delAddress] -> $...['delAddress'] :146 $...[delAddress] -> $...['delAddress'] :169 $...[info] -> $...['info'] :183 $...[description] -> $...['description'] Pricebook.html :106 $...[address] -> $...['address'] :108 $...[phone] -> $...['phone'] :131 $...[company] -> $...['company'] :132 $...[telephone] -> $...['telephone'] :132 $...[telephone] -> $...['telephone'] :133 $...[email] -> $...['email'] :133 $...[email] -> $...['email'] :134 $...[invAddress] -> $...['invAddress'] :134 $...[invAddress] -> $...['invAddress'] :145 $...[logo] -> $...['logo'] :168 $...[info] -> $...['info'] :182 $...[description] -> $...['description'] :326 $...[terms] -> $...['terms'] :327 $...[terms] -> $...['terms'] Pricebook.old.html :106 $...[address] -> $...['address'] :108 $...[phone] -> $...['phone'] :131 $...[company] -> $...['company'] :132 $...[telephone] -> $...['telephone'] :132 $...[telephone] -> $...['telephone'] :133 $...[email] -> $...['email'] :133 $...[email] -> $...['email'] :134 $...[invAddress] -> $...['invAddress'] :134 $...[invAddress] -> $...['invAddress'] :145 $...[delAddress] -> $...['delAddress'] :146 $...[delAddress] -> $...['delAddress'] :170 $...[info] -> $...['info'] :184 $...[description] -> $...['description'] :197 $...[categoryId] -> $...['categoryId'] :197 $...[cat] -> $...['cat'] :197 $...[discount] -> $...['discount'] :197 $...[discount] -> $...['discount'] :200 $...[name] -> $...['name'] :201 $...[description] -> $...['description'] :215 $...[cat] -> $...['cat'] :215 $...[cat] -> $...['cat'] :216 $...[price] -> $...['price'] :216 $...[price] -> $...['price'] :216 $...[discount] -> $...['discount'] :221 $...[uom] -> $...['uom'] :222 $...[price] -> $...['price'] :223 $...[discount] -> $...['discount'] PricebookJLM.html :105 $...[address] -> $...['address'] :107 $...[phone] -> $...['phone'] :132 $...[delAddress] -> $...['delAddress'] :133 $...[delAddress] -> $...['delAddress'] :145 $...[company] -> $...['company'] :146 $...[telephone] -> $...['telephone'] :146 $...[telephone] -> $...['telephone'] :147 $...[email] -> $...['email'] :147 $...[email] -> $...['email'] :148 $...[invAddress] -> $...['invAddress'] :148 $...[invAddress] -> $...['invAddress'] :170 $...[info] -> $...['info'] :184 $...[description] -> $...['description'] Pricebook_No_RRP.html :108 $...[address] -> $...['address'] :110 $...[phone] -> $...['phone'] :133 $...[company] -> $...['company'] :134 $...[telephone] -> $...['telephone'] :134 $...[telephone] -> $...['telephone'] :135 $...[email] -> $...['email'] :135 $...[email] -> $...['email'] :136 $...[invAddress] -> $...['invAddress'] :136 $...[invAddress] -> $...['invAddress'] :147 $...[delAddress] -> $...['delAddress'] :148 $...[delAddress] -> $...['delAddress'] :171 $...[info] -> $...['info'] :185 $...[description] -> $...['description'] Pricebook_RRP_Only.html :107 $...[address] -> $...['address'] :109 $...[phone] -> $...['phone'] :132 $...[company] -> $...['company'] :133 $...[telephone] -> $...['telephone'] :133 $...[telephone] -> $...['telephone'] :134 $...[email] -> $...['email'] :134 $...[email] -> $...['email'] :135 $...[invAddress] -> $...['invAddress'] :135 $...[invAddress] -> $...['invAddress'] :146 $...[logo] -> $...['logo'] :169 $...[info] -> $...['info'] :183 $...[description] -> $...['description'] :337 $...[terms] -> $...['terms'] :338 $...[terms] -> $...['terms'] ## B conditionally-initialised array (FATAL) (14) 85-1516155235/plugins/testandtag/reports/1142/s1.php :33 $csv initialised at line 18 inside the if() on line 17 - move the initialiser above that if() :100 $csv initialised at line 18 inside the if() on line 17 - move the initialiser above that if() 85-1516155235/plugins/testandtag/reports/1142/s2.php :39 $csv initialised at line 25 inside the if() on line 24 - move the initialiser above that if() :95 $csv initialised at line 25 inside the if() on line 24 - move the initialiser above that if() :116 $csv initialised at line 25 inside the if() on line 24 - move the initialiser above that if() 85-1516155235/plugins/testandtag/reports/26/showData.php :15 $csv initialised at line 14 inside the if() on line 13 - move the initialiser above that if() :38 $csv initialised at line 14 inside the if() on line 13 - move the initialiser above that if() 85-1516155235/plugins/testandtag/reports/f1_det.php :33 $csv initialised at line 20 inside the if() on line 19 - move the initialiser above that if() :82 $csv initialised at line 20 inside the if() on line 19 - move the initialiser above that if() 85-1516155235/plugins/testandtag/reports/s1_det.php :34 $csv initialised at line 18 inside the if() on line 17 - move the initialiser above that if() :103 $csv initialised at line 18 inside the if() on line 17 - move the initialiser above that if() 85-1516155235/plugins/testandtag/reports/s2_det.php :38 $csv initialised at line 24 inside the if() on line 23 - move the initialiser above that if() :90 $csv initialised at line 24 inside the if() on line 23 - move the initialiser above that if() :111 $csv initialised at line 24 inside the if() on line 23 - move the initialiser above that if() ## C count() on a possibly-unset variable (56) 85-1516155235/plugins/testandtag/assetEditSave.php :45 $_REQUEST has no visible array initialiser 85-1516155235/plugins/testandtag/clientEditSave.php :57 $_REQUEST has no visible array initialiser 85-1516155235/plugins/testandtag/functions.php :56 $result has no visible array initialiser 85-1516155235/plugins/testandtag/reports/26/annual.php :86 $sites has no visible array initialiser :113 $data has no visible array initialiser 85-1516155235/plugins/testandtag/reports/26/contract_summary.php :86 $sites has no visible array initialiser :114 $data has no visible array initialiser 85-1516155235/plugins/testandtag/reports/26/r1.php :67 $sites has no visible array initialiser :101 $data has no visible array initialiser 85-1516155235/plugins/testandtag/reports/26/r2.php :66 $sites has no visible array initialiser :95 $data has no visible array initialiser 85-1516155235/plugins/testandtag/reports/26/r3.php :56 $sites has no visible array initialiser 85-1516155235/plugins/testandtag/retestdetail.php :15 $monthlys has no visible array initialiser 85-1516155235/plugins/testandtag/retestreport.php :26 $monthlys has no visible array initialiser 85-1516155235/plugins/testandtag/siteedit.php :74 $monthlys has no visible array initialiser 85-1516155235/plugins/testandtag/siteeditsave.php :166 $_REQUEST has no visible array initialiser :190 $assets has no visible array initialiser Price_Pricebook.html :211 $inv has no visible array initialiser :221 $inv has no visible array initialiser :231 $inv has no visible array initialiser :241 $inv has no visible array initialiser :250 $inv has no visible array initialiser :260 $inv has no visible array initialiser :270 $inv has no visible array initialiser :279 $inv has no visible array initialiser :288 $inv has no visible array initialiser Pricebook.html :202 $inv has no visible array initialiser :213 $inv has no visible array initialiser :224 $inv has no visible array initialiser :235 $inv has no visible array initialiser :246 $inv has no visible array initialiser :257 $inv has no visible array initialiser :276 $inv has no visible array initialiser :287 $inv has no visible array initialiser :298 $inv has no visible array initialiser :309 $inv has no visible array initialiser PricebookJLM.html :241 $inv has no visible array initialiser :250 $inv has no visible array initialiser :277 $inv has no visible array initialiser Pricebook_No_RRP.html :210 $tmp has no visible array initialiser :231 $tmp has no visible array initialiser :249 $tmp has no visible array initialiser :268 $tmp has no visible array initialiser :286 $tmp has no visible array initialiser :303 $tmp has no visible array initialiser Pricebook_RRP_Only.html :203 $inv has no visible array initialiser :214 $inv has no visible array initialiser :225 $inv has no visible array initialiser :236 $inv has no visible array initialiser :247 $inv has no visible array initialiser :258 $inv has no visible array initialiser :274 $inv has no visible array initialiser :285 $inv has no visible array initialiser :296 $inv has no visible array initialiser :307 $inv has no visible array initialiser :318 $inv has no visible array initialiser ## D division by a possibly-zero variable (FATAL) (1) 85-1516155235/plugins/testandtag/reports/26/r3.php :123 ... / $row (7.4 returned INF, 8.0 throws DivisionByZeroError) ======================================================================== 166 findings across 41 files DRY RUN - nothing written. Re-run with --apply to fix class A only. Classes B, C, D and E are reported for manual review; they need a decision, not a rewrite. wrote /config/workspace/projects/PHP 8 Migration /php8-findings.txt