简体   繁体   中英

Foreach loop get the last item in array in a record with php?

I want to get the ip from the single record which is saved in this format:

a:10:{i:0;a:6:  {s:2:"ip";s:12:"92.74.183.58";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:  "";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1384112675;}i:1;a:6:  {s:2:"ip";s:14:"94.218.210.161";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:  0:"";s:8:"referrer";s:12:"mysite.com";s:4:"time";i:1381001719;}i:2;a:6:  {s:2:"ip";s:14:"109.193.141.97";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:  0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1373617006;}i:3;a:6:{s:2:"ip";s:13:"77.29.163.221";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1372942359;}i:4;a:6:{s:2:"ip";s:13:"77.29.163.221";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1372942159;}i:5;a:6:{s:2:"ip";s:12:"77.29.163.83";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.gigaodds.com";s:4:"time";i:1372889274;}i:6;a:6:{s:2:"ip";s:14:"46.217.104.220";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:12:"mysite.com";s:4:"time";i:1372438492;}i:7;a:6:{s:2:"ip";s:14:"46.217.104.220";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1372438135;}i:8;a:6:{s:2:"ip";s:14:"46.217.207.213";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1372368077;}i:9;a:6:{s:2:"ip";s:14:"109.192.181.68";s:7:"country";N;s:7:"browser";s:0:"";s:2:"os";s:0:"";s:8:"referrer";s:16:"www.mysite.com";s:4:"time";i:1370461381;}}

I'm trying to get only the last IP, not all IPs saved on this record.

$user_login_info = unserialize($user_info['u_login_info']);
  foreach ($user_login_info as $info) {
    $ip = $info['ip'];
    echo $ip;
    echo "<br />";
 }
$user_login_info = unserialize($user_info['u_login_info']);

$lastIp = end($user_login_info);

I found a solution. This is the method:

  $user_login_info = unserialize($user_info['u_login_info']);
  $lastIp = current($user_login_info);
  echo $lastIp['ip'];   

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM