簡體   English   中英

在陣列中存儲時間

[英]Storing time in array

我有一些代碼將值存儲在數組中。 似乎一切正常,但我還想存儲將每個值添加到數組的時間(作為數組的一部分)。代碼僅存儲唯一值,最多四個。

 function getBand() {
     $band_name=$_GET['band_name'];
     return $band_name;
 }

$pages=$_SESSION['pages'];
if(in_array($_GET['band_name'], $pages)) {
    echo"Already in Array";
} else {        
    if (empty($_SESSION['pages']))
        $_SESSION['pages'] = array();

    $_SESSION['pages'][] = getBand();
    $_SESSION['pages'] = array_slice($_SESSION['pages'], -4);
}

使用time ()獲得時間。 並將其存儲在所需的數組中。

array_push ($array, time ());

由於您正在談論“將它們添加到陣列的時間”,因此可能是您指的是微秒,在這種情況下,使用microtime ()

請注意, 這兩個函數均不返回格式化的時間戳 ,而是返回整數。

更多time () 在這里

有關microtime ()更多信息,請點擊此處

也許像這樣的事情可以做的工作:

$test = "Metallica";
$test2 = "The Black Keys";

$arr['pages'][$test] = $test;
$arr['pages'][$test] = date("D M d, Y G:i");

$arr['pages'][$test2] = $test;
$arr['pages'][$test2] = date("D M d, Y G:i");


echo '<pre>'.print_r($arr, true).'</pre>';

對於日期格式,您可以查看-http://php.net/manual/bg/function.date.php

干杯

class SessionManager
{
    protected static $pages = null;
    protected static $maxPages = 4;

    public function __construct($session) {
        self::$pages = $session['pages'];
    }

    public static function addPage($pageName) {
        self::$pages[$pageName] = array(
            'name' => $pageName,
            'created' => date('Y-m-d h:i:s')
        );
        self::$pages = array_slice(self::$pages, -1 * $maxPages);
    }

    public static function writeSession(&$session) {
        $session['pages'] = self::$pages;
    }

    public static function getPages() {
        return self::$pages;
    }
}

session_start();
$session = new SessionManager($_SESSION);
$session->addPage($_GET['band_name']);
$session->writeSession($_SESSION);

print_pre($session->getPages());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM