簡體   English   中英

致命錯誤調用字符串上的成員 FUNCTION FORMAT()

[英]FATAL ERROR CALL TO A MEMBER FUNCTION FORMAT() ON STRING

任何人都可以幫助我嗎? 我有以下致命錯誤:未捕獲的錯誤:在第 89 行的字符串上調用成員 function 格式;

第 89 行是

    $monday->setISODate($days->format("o"),$days->format("W"));

我的 function 是:

function dateToWeekPeriod($days)
{
  $monday = new DateTime();
  $monday->setISODate($days->format("o"),$days->format("W"));
  $sunday = clone $monday;
  $sunday->modify("+6 day")->setTime(23,59);

  $interval = DateInterval::createFromDateString('1 day');
  $period = new DatePeriod($monday, $interval, $sunday);
  return $period;
}

我的 function 主要是:

function main()
{
    $end = new DateTime("now");
    $begin= clone $end;
    $begin->modify('-50 days')->setTime(23,59);
    echo $end->format('Y-m-d'), "\n", $begin->format('Y-m-d')."\n";
    $interval= new DateInterval('P1D');
    $daterange= new DatePeriod($begin, $interval, $end->modify("+1 day"));

    $days=array();
    foreach($daterange as $date)
    {
      $date->format('Y-m-d')."\n";
      array_push($days,$date->format('Y-m-d'));
    }
    echo "-----les dates de l'intervalle sont:-----\n";
    var_dump($days);

    $Week=array();
    $datas=array();
    $Weeks=array();
    $insertAnnee=array();
    $recupAnnee=array();
    $tabRecupAnneeDesc=array();

    foreach($days as $d)
    {
      $week = periodToDayArray(dateToWeekPeriod($d));//les jours de la semaine concernée
      $Week=array_push($Week,$week);
    }

我在這一行有一個堆棧跟蹤:

$week = periodToDayArray(dateToWeekPeriod($d))

提前致謝

在您的主要 function 中, $days是一個字符串數組。 您將此數組的元素(字符串)傳遞到dateToWeekPeriod function。

$monday->setISODate($days->format("o"),$days->format("W"));
$days->format("o") // not possible 

最簡單的方法是將$days保留在日期上。

$days=array();
  foreach($daterange as $date)
  {
    array_push($days,$date);
  }

暫無
暫無

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

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