如何根据设备系统显示链接。 (PHP邮件)

时间:2018-07-18 09:23:20

标签: javascript php email hyperlink message

我正在使用php发送电子邮件。 当用户打开我的电子邮件时,我会在其中发送一些文本和链接。 我不希望,如果使用iPhone的用户-istore上会有一个链接,或者如果他正在使用android-将会有一个玩市场的链接,或者如果他使用的是网络浏览器(PC)-它会显示一个指向网站的链接。

如何创建这些案例? 我有使用js的想法,但无法通过电子邮件发送js代码。

2 个答案:

答案 0 :(得分:1)

您可以使用user-agent并使用JavaScript检测用户的设备。

/**
 * Determine the mobile operating system.
 * This function returns one of 'iOS', 'Android', 'Windows Phone', or 'unknown'.
 *
 * @returns {String}
 */
function getMobileOperatingSystem() {
  var userAgent = navigator.userAgent || navigator.vendor || window.opera;

      // Windows Phone must come first because its UA also contains "Android"
    if (/windows phone/i.test(userAgent)) {
        return "Windows Phone";
    }else if (/android/i.test(userAgent)) {
        return "Android";
    }else if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) {
        return "iOS";
    }else if (screen.width >= 480) {
        return "PC"
    }

    return "unknown";
}

但是,在您的情况下,不必要检测用户的设备或操作系统。正如评论中提到的那样,为什么不把所有链接放在那里,让用户选择他们喜欢的平台呢?

另一方面,例如,可以通过在特定设备上发送和发送电子邮件,然后在另一台设备上检查同一封电子邮件来轻松播放。

尽管如此,由于JavaScript在客户端运行,因此可以由用户操纵,因此出于安全原因,您可能需要使用server-side detection with PHP或预构建的mobile-checking libary

参考

How to detect mobile or PC users?
How to detect operating system?

答案 1 :(得分:0)

您可以使用get_browser()
或获取$_SERVER['HTTP_USER_AGENT']用于操作系统和浏览器。
请记住,该信息可能是欺骗性的。

如果您有此信息,则可以交叉检查用户代理以及要发送的链接。这是可能的useragents

的列表