Php遇到一个非常好的数值

时间:2015-11-30 15:26:08

标签: php date time numeric

从这段代码:

$kw = CalenderWeekHelper::getCalenderWeek($currentYear);
if(isset($_POST['generate'])) {
    for($i = 0; $i < 52; $i++) {
        foreach($users as $user) {

            if ($i > 52) {
                break;
            }
            $start = $kw[$i]['start'];
            $end   = $kw[$i]['end'];

            $startCon = date('Y-m-d', $start);
            $endCon   = date('Y-m-d', $end);
        }
    }
}

助手班级:

class CalenderWeekHelper {

    public static function getCalenderWeek($year)
    {
        for ($i=0; $i <= 52; $i++)
        {
            $week = sprintf('%02s', $i);
        $from = date("Y-m-d", strtotime("{$year}W{$week}")); # d.m.Y
            $to   = date("Y-m-d", strtotime("{$year}W{$week} +6 days"));
            $weekArray[$i] = array('start' => $from, 'end' => $to);

        }
        return $weekArray;
    }
}

我收到了:

  

注意:......行中遇到一个格式不正确的数值:

指出这些方面:

$startCon = date('Y-m-d', $start);
$endCon   = date('Y-m-d', $end);

编辑: var_dump($ kw)打印出以下内容:

array (size=53)

      0 => 
        array (size=2)
          'start' => string '1970-01-01' (length=10)
          'end' => string '1970-01-01' (length=10)
      1 => 
        array (size=2)
          'start' => string '2014-12-29' (length=10)
          'end' => string '2015-01-04' (length=10)
      2 => 
        array (size=2)
          'start' => string '2015-01-05' (length=10)
          'end' => string '2015-01-11' (length=10)
      3 => 
        array (size=2)
          'start' => string '2015-01-12' (length=10)
          'end' => string '2015-01-18' (length=10)
      4 => 
        array (size=2)
          'start' => string '2015-01-19' (length=10)
          'end' => string '2015-01-25' (length=10)
      5 => 
        array (size=2)
          'start' => string '2015-01-26' (length=10)
          'end' => string '2015-02-01' (length=10)
      6 => 
        array (size=2)
          'start' => string '2015-02-02' (length=10)
          'end' => string '2015-02-08' (length=10)
      7 => 
        array (size=2)
          'start' => string '2015-02-09' (length=10)
          'end' => string '2015-02-15' (length=10)
      8 => 
        array (size=2)
          'start' => string '2015-02-16' (length=10)
          'end' => string '2015-02-22' (length=10)
      9 => 
        array (size=2)
          'start' => string '2015-02-23' (length=10)
          'end' => string '2015-03-01' (length=10)
      10 => 
        array (size=2)
          'start' => string '2015-03-02' (length=10)
          'end' => string '2015-03-08' (length=10)
      11 => 
        array (size=2)
          'start' => string '2015-03-09' (length=10)
          'end' => string '2015-03-15' (length=10)
      12 => 
        array (size=2)
          'start' => string '2015-03-16' (length=10)
      'end' => string '2015-03-22' (length=10)

有人知道解决方案吗?

1 个答案:

答案 0 :(得分:1)

void OnGUI() { if (isAtStartup) { GUI.Label(new Rect(2, 10, 150, 100), "Press S for server"); GUI.Label(new Rect(2, 50, 150, 100), "Press R for registered servers"); GUI.Label(new Rect(2, 90, 150, 100), "Press C for client"); } } public void SetupServer() { //connecting to my server NetworkServer.Listen(4444); isAtStartup = false; Debug.Log("Server Connected"); } public void SetupClient() { ClientScene.RegisterPrefab(playerPrefab); myClient = new NetworkClient(); myClient.RegisterHandler(MsgType.Connect, OnConnected); myClient.Connect("127.0.0.1", 4444); isAtStartup = false; } // Create a local client and connect to the local server public void SetupLocalClient() { myClient = ClientScene.ConnectLocalServer(); myClient.RegisterHandler(MsgType.Connect, OnConnected); isAtStartup = false; } // client function public void OnConnected(NetworkMessage netMsg) { Debug.Log("Connected to server"); GameObject player = (GameObject)Instantiate(playerPrefab, transform.position, transform.rotation); NetworkServer.Spawn(player); } } 函数只接受unix时间戳。

在您的代码中,您有两个选择:

1:直接使用date()$start,因为它们的格式已经很好:

$end

2:将$startCon = $start; $endCon = $end; $start变为带$end的unix时间戳:

strtotime()

如果要更改格式,请使用第二个格式。如果没有,请使用第一个。