我的脚本如下所示:
<?php
mail('xxxxxxxxxx@msg.telus.com', '', 'Message', 'From: John Doe \r\n', '-fxxxxxxxxxx@email.com');
?>
当我通过将脚本发送到我的手机来测试脚本时,它可以正常接收消息,但它说消息来自“9999999999”。我的问题:
- 9999999999 是什么意思?我可以从谷歌收集到的最好的信息是它表示私人号码/垃圾邮件。
- 有没有办法让发件人显示为“Jon Doe”?本质上,我需要能够使用 PHP 脚本来控制电话接收到消息时显示在消息上的发件人姓名。
我正在使用 Android 手机 (Galaxy S3) 进行测试,但这需要能够在所有手机和所有服务提供商上运行。有什么解决办法吗?
更新
经过一些测试,这是我发现的:
- 使用 Fred 的解决方案,根本不会发送任何消息。
- 如果我在 Fred 的解决方案中去掉标题参数中的名称,并去掉电子邮件周围的括号,我会得到与以前相同的结果(它在发件人字段中发送 9999999999)。
- 如果在实施上述更改后,我将电子邮件从一个确实存在的地址(到目前为止我一直在使用我的电子邮件)更改为一个不存在的地址,我会得到相同的 9999999999 结果。
- 如果我将电子邮件更改为非电子邮件格式的内容(例如,只有 John Doe 而不是 john@doe.com),它根本不会发送。
我的手机和我妈妈的手机都是这种情况(不同的型号 - 不是智能手机 - 但使用相同的服务提供商,她的手机是 6245 而不是 9999999999)。考虑到这一点,并且由于 Fred 的解决方案对他有效,但对我无效,我只能得出结论,这取决于提供者。此外,在我的提供商的情况下,无论电子邮件服务器是否实际存在,他们都必须使用正则表达式来确保标头的格式为电子邮件。我想我将不得不更多地研究 mail() 函数。