2017-10-30 15 views
0

フロントエンドにユーザーエージェントの値を渡す必要があります。ユーザエージェント値の取得。サーバー側とクライアント側?

$_SERVER['HTTP_USER_AGENT']を使用してこの値を取得し、フロントエンドに書き込むことができます。 (実は私はMage::helper('core/http')->getHttpUserAgent()を使用することになりますが、私はそれが言及した機能の上にコールするだけでMagentoのヘルパーだと思う。)

または私は、クライアント側のJSとnavigator.userAgentを得ることができます。

どのような理由がありますか?私の主な関心事はスピードです。

p.s. UAは簡単に操作できることを理解しています。値に重大な機能はありません。セカンダリパラメータとして使用されています。

+0

フロントエンドに渡してフロントエンドから受け取れるのであれば、なぜサーバーを使用するのですか? – Devon

+0

SOクローズ理由 - *「多くの良い質問は、専門家の経験に基づいてある程度の意見を生成しますが、この質問に対する回答は、事実、参考文献、または特定の専門知識ではなく、概ね意見に基づいている傾向があります。 (http://www.quora.com/Computer-Programming)を参照して開発フォーラム(たぶん[quora](http://www.quora.com/Computer-Programming))を見つけることができます。次に、特定のコーディングに関する問題がある場合は、StackOverflowに戻ってください。お手伝いします。 –

答えて

1

私は個人的にnavigator.userAgentを使用します。主に、PHPからJavaScriptへの値渡しは私の意見ではかなり醜いので、また、両方の値が正確に同じになります。誰かが自分のユーザーエージェントを編集することを決めたとしても。

シンプルさはここでケーキを取りますと思います。

0

パフォーマンスは目的によって異なります。これをPHPの中で必要とする場合は、上で述べたhelper getterでserver変数を使用してください。 jsの場合、ナビゲータオブジェクトを使用します。

一般に、navigator.userAgentとHTTP_USER_AGENTは両方ともRequest Headerの変数であり、すでにjsの場合はサーバーまたはユーザーのブラウザのメモリに存在します。したがって、測定可能なパフォーマンスの違いはありません。

関連する問題