3v4l.org

run code in 300+ PHP versions simultaneously
<?php public function syncSocialWithPin($userinfo, &$status) { //istanzio db SLAVE e recupero l'user ID del nuovo utente sullo SLAVE $db = JFusionFactory::getDatabase($this->getJname()); $query_pin = $db->getQuery(true) ->select('id') ->from('#__users') ->where('username=' ."'$userinfo->username'"); $db->setQuery($query_pin); $user_id_pin = $db->loadResult(); // SLAVE id -> #__users //istanzio db MASTER e recupero id MASTER $database_master = JFactory::getDBO(); $select_user_id = $database_master->getQuery(true) ->select('id') ->from('#__users') ->where('username='."'$userinfo->username'"); $database_master->setQuery($select_user_id); $master_user_id = $database_master->loadResult(); // MASTER id -> #__users //Recupero info Joomsocial // $query_users_fields = $database_master->getQuery(true) // ->select('value') // ->from('#__community_fields_values') // ->where('user_id='.$master_user_id .' AND field_id=8'); // $database_master->setQuery($query_users_fields); // $masterdbresults = $database_master->loadResult(); //Joomsocial infos // controllo che la query abbia un risultato! $pinimport = new stdClass(); // obj da importare $pinimport->user_id = $user_id_pin; $pinimport->first_name = $userinfo->name; $pinimport->username = $userinfo->username; $pinimport->email = $userinfo->email; $pinimport->location = $master_user_id; $pinimport->created_date = date('Y-m-d H:i:s', time()); $pinimport->updated_date = date('Y-m-d H:i:s', time()); $pinimport->activation = ''; //TEST IT!!!! //Controllo se l'utente è già presente su social pinboard $updatedinfo = $db->getQuery(true) ->select('*') ->from('#__pin_user_settings') ->where('email='."'$userinfo->email'"); $db->setQuery($updatedinfo); $datacheck = $db->loadObjectList(); $emptycheck = (array) $datacheck; // typecasto ad array per controllare se è vuoto! // if(empty(get_object_vars($datacheck) // un 1liner per vedere se l'oggetto è vuoto if (empty($emptycheck)) { // se NON è presente INSERT tutto $db->insertObject('#__pin_user_settings', $pinimport); $status['debug']="l'utente è presente su SocialPinboard, emptycheck positivo!"; } // else if controlla ogni campo presente e vedi se è diverso da quelli passati nell'oggetto $userinfo // foreach ($datacheck as $d) { // if ($d->username != $userinfo->username) // { // $usernameupdate = $db->getQuery(true) // ->insert("'$d->username'") // ->in(#__user); // $db->setQuery($usernameupdate); // $db->query() // $db->execute() // $status['debug']= "Usernamer Modificato" .$userinfo->username. "in".$d->username; // } // // if ($d->email != $userinfo->email) // { // $emailupdate = $db->getQuery(true) // ->insert("'$d->email'") // ->in(#__user); // $db->setQuery($emailupdate); // $db->query() // $db->execute() // $status['debug']= "Email Modificato" .$userinfo->email. "in".$d->email; // } // // if ($d->first_name != $userinfo->first_name) // { // $firstnameupdate = $db->getQuery(true) // ->insert("'$d->first_name'") // ->in(#__user); // $db->setQuery($firstnameupdate); // $db->query() // $db->execute() // $status['debug']= "First_name Modificato" .$userinfo->first_name. "in".$d->first_name; // } // // if ($d->location != $userinfo->location) // { // $locationupdate = $db->getQuery(true) // ->insert("'$d->location'") // ->in(#__user); // $db->setQuery($locationupdate); // $db->query() // $db->execute() // $status['debug']= "Location Modificato" .$userinfo->location. "in".$d->location; // } // //} return $status; } /*

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)
5.4.270.0040.03812.36
5.4.260.0060.03812.36
5.4.250.0080.03612.36
5.4.240.0040.03812.37
5.4.230.0080.03912.36
5.4.220.0080.03912.35
5.4.210.0070.03712.36
5.4.200.0080.04112.35
5.4.190.0070.04312.35
5.4.180.0080.04412.35
5.4.170.0080.04312.36
5.4.160.0070.04212.35
5.4.150.0090.03912.34
5.4.140.0050.04012.04
5.4.130.0070.03612.02
5.4.120.0080.03411.98
5.4.110.0090.03411.98
5.4.100.0060.03611.98
5.4.90.0040.03911.98
5.4.80.0100.04111.98
5.4.70.0070.03811.98
5.4.60.0070.03411.98
5.4.50.0030.03911.98
5.4.40.0050.03811.96
5.4.30.0040.03911.96
5.4.20.0050.03611.95
5.4.10.0090.03211.96
5.4.00.0070.03611.45
5.3.280.0070.03712.71
5.3.270.0080.04212.72
5.3.260.0070.04512.72
5.3.250.0090.04512.72
5.3.240.0070.04712.72
5.3.230.0080.03712.71
5.3.220.0090.03612.68
5.3.210.0040.04312.68
5.3.200.0070.03612.68
5.3.190.0080.03512.68
5.3.180.0070.03612.67
5.3.170.0090.03512.67
5.3.160.0070.03612.67
5.3.150.0070.04312.67
5.3.140.0090.04112.66
5.3.130.0060.04712.66
5.3.120.0090.04312.66
5.3.110.0070.03812.66
5.3.100.0080.03612.12
5.3.90.0070.03612.08
5.3.80.0070.03612.07
5.3.70.0060.03612.07
5.3.60.0090.03712.06
5.3.50.0050.04112.00
5.3.40.0050.03812.00
5.3.30.0060.03511.94
5.3.20.0070.03611.70
5.3.10.0040.03811.65
5.3.00.0070.03711.64

preferences:
141.42 ms | 1394 KiB | 7 Q