3

現在の年、月、日を取得する必要があるアプリケーションに取り組んでいます。ルールのプレブロックでこの情報を取得する方法はありますか?

このデータを文字列または数値、あるいはその両方として取得できますか?

現在、 http://docs.kynetx.com/docs/Timeに文書化されている時間関数がありますが、私がやろうとしていることに対してはどれも機能していないようです。

このデータを取得するときにタイムゾーンを設定する方法はありますか?

4

2 に答える 2

4

文書化されていない機能のように見える strftime を使用してそれを行うことができたので、注意して使用してください。

ruleset a60x518 {
  meta {
    name "date-test"
    description <<
      date-test
    >>
    author "Mike Grace"
    logging on
  }

  rule testing {
    select when pageview ".*"
    pre {
      retTime = time:strftime(time:now({"tz":"America/Denver"}), "%c");
      month = time:strftime(time:now({"tz":"America/Denver"}), "%B");
      year = time:strftime(time:now({"tz":"America/Denver"}), "%Y");
      day = time:strftime(time:now({"tz":"America/Denver"}), "%d");
    }
    {
      notify("time",retTime) with sticky = true;
      notify("month",month) with sticky = true;
      notify("year",year) with sticky = true;
      notify("day",day) with sticky = true;
    }
  }
}

example.com でアプリを 2 回実行します。タイムゾーンをニューヨークに設定し、別の時間をデンバーに設定

代替テキスト

このサイトhttp://www.statoids.com/tus.htmlを使用して、タイムゾーンに使用する正しい文字列を取得しました。それらがすべて機能するかどうかはわかりません。このサイトを見つけていくつか試してみたところ、うまくいったので注意して使用してください.

于 2010-12-28T01:04:30.983 に答える
3

おそらく、ドキュメントは元に戻されました。便宜上、strftime のドキュメントを次に示します。

時間:strftime()

日時文字列を別の形式に変換する

Usage
    time:strftime(`<string>`,`<format>`)    

strftime への有効なフォーマット引数は、POSIX strftime規則に従います。

サンプル

time:strftime(xTime,”%F %T”)                 # 2010-10-06 18:15:24         
time:strftime(xTime,”%F”)                    # 2010-10-06         
time:strftime(xTime,”%T”)                    # 18:19:29         
time:strftime(xTime,”%A %d %b %Y”)           # Wednesday 06 Oct 2010
time:strftime(xTime,”%c”)                    # Oct 6, 2010 6:25:55 PM

その他の時間機能:

今の時間()

ユーザーの位置データに基づく現在の日時

Usage    
    time:now()
    time:now({“tz” : <timezone>) 

時間:新しい(​​)

文字列から新しい RFC 3339 日時文字列を作成します (ソース文字列のフォーマット方法にある程度の柔軟性を持たせます)

Usage 
    time:new()                     # Equivalent to time:now()
    time:new(<string>)   

日時ソース文字列の有効な形式はISO8601 (v2000)にあります。

時間:追加()

ソース文字列に特定の時間単位数を加算 (または減算) します

Usage  
    time:add(<string>,{<unit> : n})  
于 2010-12-28T20:05:56.990 に答える