我正在使用php发送电子邮件。 当用户打开我的电子邮件时,我会在其中发送一些文本和链接。 我不希望,如果使用iPhone的用户-istore上会有一个链接,或者如果他正在使用android-将会有一个玩市场的链接,或者如果他使用的是网络浏览器(PC)-它会显示一个指向网站的链接。
如何创建这些案例? 我有使用js的想法,但无法通过电子邮件发送js代码。
答案 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