• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:phpのfuction内での計算)

PHPのfunction内での時間計算方法について

このQ&Aのポイント
  • function内での時間計算方法が上手く動作しない問題について相談いただきました。具体的には、入力した時間と分を計算し、結果を表示する処理でうまくいかないとのことです。
  • 現在の実装では、入力した値を取得して計算を行い、連結した結果を表示する仕組みになっています。しかし、特定の箇所でエラーが発生しており、時間と分を別々に表示させることができません。
  • 解決策としては、表示させたい時間と分を別々の変数に格納し、最後に連結する方法が考えられます。ただし、具体的なエラーメッセージやエラーが発生している箇所の情報がないため、詳細なアドバイスはできません。

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

>入力した場所からフォーカスが外れたとき呼ぶようにしています onblurで呼び出せるのはJavaScriptの関数だけです。phpの関数はブラウザに返しているソースには含まれていませんので、JavaScriptから利用することは出来ません。サーバサイドとクライアントサイドの違いを理解してください。 parseFloatとかあるのでJavaScriptの関数かと思ったのですが、文字列連結などはphpの演算子が混じっているしexplodeはあるし・・・。JavaScriptならJavaScriptで完結させてください。

k-karasu
質問者

お礼

回答、ありがとうございました。 JavaScriptで文字の切り分け、連結を実装したところ無事うまく動きました。 まだまだ勉強不足でした。ありがとうございました。

k-karasu
質問者

補足

回答、誠にありがとうございます。 PHPは初心者で素人なのでJavaScriptのとPHPが混ざっていました・・・ onblurで呼び出せるのはJavaScriptのみでexplodeや 文字連結はPHP記述なのでおかしいということですね。 それらの処理をするならPHP記述ではなくJavaScriptで記述するということでしょうか。

その他の回答 (2)

noname#247307
noname#247307
回答No.3

PHPだと思って読んでしまいました。これ、JavaScriptなんですね。紛らわしい書き方はしないほうがいいですよ。 $kekka_time = explode(".",$kekka_min);  ↓ $kekka_time = ("" + $kekka_min).split("."); としてください。

k-karasu
質問者

お礼

回答ありがとうございます。 お教えいただいた記述ですが私の書き方が悪いか、記述場所が間違っているのかうまく動きませんでした。 Math.floorを使用して動作確認できました。 ありがとうございます。

k-karasu
質問者

補足

回答ありがとうございます。 書き方がわかりにくかったようですみませんでした。 ごちゃ混ぜに書いてしまいました。

回答No.2

PHPをクライアントサイドのロジックのように書いてますが、なぜでしょうか?

k-karasu
質問者

お礼

回答ありがとうございます。 PHPの知識が浅く混ぜ混ぜで書いてしまっていました。 もっと記述を学んでいきます。 ありがとうございました。

関連するQ&A

専門家に質問してみよう