3v4l.org

run code in 500+ PHP versions simultaneously
<?php declare(strict_types=1); // VM8 $vm[8] = [ 'juridico_adm', 'juridico_advogo', 'juridico_alecrimcosta', 'juridico_bck', 'juridico_borchardt', 'juridico_condoconta', 'juridico_confi', 'juridico_costaesa', 'juridico_covoloadvogados', 'juridico_dejur', 'juridico_dejur_bkp', 'juridico_demo', 'juridico_drumond', 'juridico_evl', 'juridico_fva', 'juridico_galvaoleonardo', 'juridico_gradv', 'juridico_gs', 'juridico_hba', 'juridico_jairavansi', 'juridico_jalocacoes', 'juridico_jgg', 'juridico_kazapi', 'juridico_leonato', 'juridico_marinsbertoldi', 'juridico_masa', 'juridico_medeirossantos', 'juridico_medina', 'juridico_mme', 'juridico_monteiro', 'juridico_mosello', 'juridico_mvsadv', 'juridico_nfa', 'juridico_orr', 'juridico_padrao', 'juridico_paglia', 'juridico_pbds', 'juridico_pcpadv', 'juridico_pqadv', 'juridico_pz', 'juridico_qmr', 'juridico_queirozeandrade', 'juridico_rangelmoreira', 'juridico_sarturi', 'juridico_smnadv', 'juridico_tgs_old', 'juridico_total', 'juridico_victorlopes', 'juridico_vmz', ]; // VM9 $vm[9] = [ 'juridico_baccin', 'juridico_bortolotto', 'juridico_casadolima', 'juridico_cbsprev', 'juridico_cmcadvogados', 'juridico_cms', 'juridico_cosso', 'juridico_dladv', 'juridico_dottoreis', 'juridico_dsmaazulay', 'juridico_fcar', 'juridico_frutuoso', 'juridico_grupooad', 'juridico_guimaraes', 'juridico_inpejam', 'juridico_jnpmadvogados', 'juridico_laloni', 'juridico_lbr', 'juridico_lzadv', 'juridico_mirandamafra', 'juridico_pbt', 'juridico_reiscostaadvogados', 'juridico_rigon', 'juridico_rossetto', 'juridico_senso', 'juridico_siqueiracastro', 'juridico_tagliariadvogados', 'juridico_teste', 'juridico_ztfadvogados', 'juridico_zuninoadv', ]; //VM10 $vm[10] = [ 'juridico_abacocalculos', 'juridico_advocaciapalma', 'juridico_alvaroalfredo', 'juridico_amorecuidado', 'juridico_bobsinvidal', 'juridico_bp', 'juridico_brancomiele', 'juridico_brizolaejapur', 'juridico_ca', 'juridico_caasc', 'juridico_ccbadv', 'juridico_cemin', 'juridico_clvadv', 'juridico_comoregistrar', 'juridico_condominio', 'juridico_cupertinocapital', 'juridico_donaadv', 'juridico_fasnadv', 'juridico_gnl', 'juridico_goulart', 'juridico_gr', 'juridico_isaacmiranda', 'juridico_laecioadv', 'juridico_mcga', 'juridico_mortoza', 'juridico_msa', 'juridico_quetesadvocacia', 'juridico_regent', 'juridico_roneely', 'juridico_rosajunior', 'juridico_sarloemachado', 'juridico_sdvadv', 'juridico_shr', 'juridico_sotopietra', ]; //VM11: $vm[11] = [ 'juridico_assisesiqueira', 'juridico_cavallazzi', 'juridico_chavesemaran', 'juridico_cmmlaw', 'juridico_gislandia', 'juridico_jacintolaw', 'juridico_marciomoraes', 'juridico_msradvogados', 'juridico_nascimentomourao', 'juridico_pereiraeprates', 'juridico_pradiadvogados', 'juridico_sobrecontroller', 'juridico_wecontroll', ]; $vm[12] = [ 'juridico_teste', ]; //Departamentos oculto //$query = function (string $base): string { // return "SELECT '{$base}' AS `base`," // . " (SELECT COUNT(*) FROM `{$base}`.`departamentos` WHERE `flag_oculto` = 1) AS `dep_ocultos`," // . " (SELECT COUNT(*) FROM `{$base}`.`departamentos`) AS `dep_total`;"; //}; //Coordenadores que perdem acesso por departamento oculto //Retorno: número de coordenadores //$query = function (string $base): string { // return "SELECT '{$base}' AS `base`, COUNT(DISTINCT `dxr`.`usuarios_id`) AS `coord_dep_oculto`" // . " FROM `{$base}`.`departamento_x_responsavel` AS `dxr`" // . " INNER JOIN `{$base}`.`departamentos` AS `dep`" // . " ON `dep`.`departamentos_id` = `dxr`.`departamentos_id`" // . " INNER JOIN `{$base}`.`usuarios` AS `u` ON `u`.`usuarios_id` = `dxr`.`usuarios_id`" // . " WHERE `dxr`.`flag_oculto` = 0 AND `dxr`.`flag_coordenador` = 1" // . " AND `dep`.`flag_oculto` = 1 AND `u`.`flag_oculto` = 0;"; //}; //Supervisores que perdem acesso por departamento oculto //Retorno: número de supervisores //$query = function (string $base): string { // return "SELECT '{$base}' AS `base`, COUNT(DISTINCT `uxd`.`usuarios_id`) AS `superv_dep_oculto`" // . " FROM `{$base}`.`usuarios_x_dep` AS `uxd`" // . " INNER JOIN `{$base}`.`departamentos` AS `dep`" // . " ON `dep`.`departamentos_id` = `uxd`.`departamentos_id`" // . " INNER JOIN `{$base}`.`usuarios` AS `u` ON `u`.`usuarios_id` = `uxd`.`usuarios_id`" // . " WHERE `uxd`.`flag_supervisor` = 1" // . " AND `dep`.`flag_oculto` = 1 AND `u`.`flag_oculto` = 0;"; //}; //tarefa que hoje é filtrável/editável por coordenador ou supervisor e deixa de ser. //ao filtrar por um usuário, tarefas cujo processo está em //departamento oculto deixam de aparecer pelo vínculo coordenador/supervisor //Retorno: quantidade de tarefas //$query = function (string $base): string { // return "SELECT '{$base}' AS `base`, COUNT(DISTINCT `pxe`.`pxe_id`) AS `tarefas_perdidas`" // . " FROM `{$base}`.`processos_x_etapas` AS `pxe`" // . " INNER JOIN `{$base}`.`processos` AS `pr` ON `pr`.`processos_id` = `pxe`.`processos_id`" // . " INNER JOIN `{$base}`.`departamentos` AS `dep`" // . " ON `dep`.`departamentos_id` = `pr`.`departamentos_id`" // . " WHERE `pxe`.`flag_oculto` = 0 AND `pr`.`flag_oculto` = 0" // . " AND `dep`.`flag_oculto` = 1" // . " AND (EXISTS(SELECT 1 FROM `{$base}`.`departamento_x_responsavel` AS `dxr`" // . " WHERE `dxr`.`departamentos_id` = `pr`.`departamentos_id`" // . " AND `dxr`.`flag_oculto` = 0 AND `dxr`.`flag_coordenador` = 1)" // . " OR EXISTS(SELECT 1 FROM `{$base}`.`usuarios_x_dep` AS `uxd`" // . " WHERE `uxd`.`departamentos_id` = `pr`.`departamentos_id`" // . " AND `uxd`.`flag_supervisor` = 1));"; //}; //Parametro usr_dep_restringe $query = function (string $base): string { return "SELECT '{$base}' AS `base`," . " EXISTS(SELECT 1 FROM (SELECT `sp`.`sys_par_valor` AS `valor`" . " FROM `{$base}`.`sys_par` AS `sp`" . " WHERE `sp`.`sys_par_nome` = 'usr_dep_restringe' AND `sp`.`flag_oculto` = 0" . " ORDER BY `sp`.`sys_par_id` DESC LIMIT 1) AS `ult`" . " WHERE TRIM(`ult`.`valor`) NOT IN ('', '0')) AS `restringe_ativo`," . " EXISTS(SELECT 1 FROM `{$base}`.`sys_par_usr` AS `spu`" . " INNER JOIN `{$base}`.`sys_par` AS `sp2` ON `sp2`.`sys_par_id` = `spu`.`sys_par_id`" . " WHERE `sp2`.`sys_par_nome` = 'usr_dep_restringe' AND `spu`.`flag_oculto` = 0) AS `tem_sobrescrita`;"; }; $nroVm = 11; foreach ($vm[$nroVm] as $key => $base) { echo $query($base) . PHP_EOL; }

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
8.5.100.0100.00616.91
8.5.90.0120.00916.79
8.5.80.0110.00716.79
8.5.70.0100.00716.91
8.5.60.0100.00916.89
8.5.50.0090.00716.59
8.5.40.0060.00416.57
8.5.30.0100.00916.70
8.5.20.0110.00516.61
8.5.10.0100.00316.66
8.5.00.0100.00816.55
8.4.250.0120.01119.81
8.4.240.0110.00819.75
8.4.230.0080.00819.66
8.4.220.0160.00719.58
8.4.210.0120.00919.78
8.4.200.0110.01019.70
8.4.190.0140.00719.75
8.4.180.0140.00719.65
8.4.170.0140.00619.75
8.4.160.0080.00619.66
8.4.150.0090.00719.72
8.4.140.0050.00517.71
8.4.130.0050.00417.72
8.4.120.0070.00317.72
8.4.110.0100.00617.94
8.4.100.0100.00417.72
8.4.90.0050.00517.94
8.4.80.0110.00517.86
8.4.70.0090.00617.91
8.4.60.0050.00417.94
8.4.50.0070.00317.91
8.4.40.0120.00617.93
8.4.30.0130.00717.73
8.4.20.0080.00917.82
8.4.10.0130.00617.75
8.3.330.0090.00918.68
8.3.320.0110.01018.32
8.3.310.0110.00918.23
8.3.300.0150.00718.42
8.3.290.0130.00918.53
8.3.280.0120.00818.54
8.3.270.0100.00616.51
8.3.260.0080.00716.60
8.3.250.0070.00416.77
8.3.240.0110.00616.68
8.3.230.0080.01016.69
8.3.220.0090.00816.62
8.3.210.0060.00416.74
8.3.200.0110.00816.65
8.3.190.0080.00516.76
8.3.180.0040.00416.65
8.3.170.0100.00616.72
8.3.160.0100.00716.91
8.3.150.0110.00916.75
8.3.140.0130.00516.79
8.3.130.0030.00716.80
8.3.120.0060.00416.72
8.3.110.0030.00616.91
8.3.100.0070.00516.66
8.3.90.0110.00816.79
8.3.80.0110.00716.80
8.3.70.0110.00916.73
8.3.60.0100.00516.75
8.3.50.0080.00516.81
8.3.40.0120.01117.86
8.3.30.0070.00918.04
8.3.20.0080.00818.03
8.3.10.0070.00717.98
8.3.00.0060.00318.06
8.2.330.0060.01018.07
8.2.320.0070.00218.25
8.2.310.0110.00718.14

preferences:
58.31 ms | 1382 KiB | 5 Q