x

Main chapters

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. LimeSurvey Cloud - Quick start guide
  3. LimeSurvey CE - Installation
  4. How to design a good survey (Guide)
  5. Getting started
  6. LimeSurvey configuration
  7. Introduction - Surveys
  8. View survey settings
  9. View survey menu
  10. View survey structure
  11. Introduction - Questions
  12. Introduction - Question Groups
  13. Introduction - Surveys - Management
  14. Survey toolbar options
  15. Multilingual survey
  16. Quick start guide - ExpressionScript
  17. Advanced features
  18. General FAQ
  19. Troubleshooting
  20. Workarounds
  21. License
  22. Version change log
  23. Plugins - Advanced
 Actions

Translations

Translations:ExpressionScript examples/110/ja

From LimeSurvey Manual

目的 2つの日付の差を計算する
タイプ 出現条件/質問タイプ:式/検証
質問1(date/time、コード: DOB): 誕生日はいつですか。
質問2(date/time、コード: datetoday): 今日の日付は何ですか。
質問3(テキスト表示): 生まれてからXXXX日目です。
したいこと: 質問1と質問2の日付の差を計算し表示する。
{(strtotime(datetoday)-strtotime(DOB))/60/60/24}
解説 strtotimeは、1970年1月1日から指定された日付までの秒数を計算します。上記の式は、指定された2つの日付の秒数の差を計算しています。"/60/60/24"の部分で、秒数を日数に変換しています。
"datetoday"を回答させる代わりに、strtotime('now')、または単にtime()によって、1970年1月から現在(アンケート実施時点)までの秒数を直接得ることができます。{(time() - strtotime(DOB)) / 60 / 60 / 24 / 365.25}という式によってその人の年齢を簡単に計算することができます。いずれの場合においても、strtotime()関数を正しく機能させるためには、適切な形式で日付を入力する必要があります。
手順 2つの日付型質問(誕生日と今日の日付)とテキスト表示型質問を作成する
テキスト表示型質問に次のように入力する: "{datetoday}現在で、生まれてから{(strtotime(today)-strtotime(dob))/60/60/24}日目です。"

注意: 関数strtotimeは、多くの日付形式に対応していますが、問題がある場合は、日付形式をmm/dd/yyyy、yyyy-mm-dd、dd.mm.yyyyのいずれかにします"
サンプルファイル Date_difference.zip