php - GCM/Parse 推送函数在使用字符串文字而非字符串变量时有效

标签 php laravel parse-platform

有点奇怪,尝试使用 Parse 通过 deviceToken 将通知推送到设备。

如果我按字面意思指定 deviceToken,即

$query->equalTo("deviceToken", "uniquedevicetoken");

$token = "uniquedevicetoken";
$query->equalTo("deviceToken", $token);

推送工作顺利。

但是,如果我尝试使用数据库中的 token ,即

$query->equalTo("deviceToken", $user->gcm_regid);

函数没有被调用,即使我回显原始字符串和变量在一起,它们看起来是相同的。

我还尝试了返回 2 的 strcmp()。

因此,即使这些字符在视觉上看起来完全相同,但一个有效,一个无效。

token 存储在 MySQL 中,我尝试了 VARCHAR 和 TEXT 的几种不同的编码,每次都得到相同的结果。

最佳答案

好的解决方案是在数据库中写入不带“特殊”字符的“gcm_regid”,因为之前关心清理总是有意义的,所以数据库将保持“干净”。但作为快速解决方案,您可以试试这个:

$query->equalTo("deviceToken", rtrim($user->gcm_regid));

关于php - GCM/Parse 推送函数在使用字符串文字而非字符串变量时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33299095/

相关文章:

mysql - Laravel 查询数据透视结果。

javascript - 获取动态生成的 key 的请求值

php - 在现有网页中显示带有 XSL 的 XML 文件

javascript - SyntaxError : JSON. 解析:JSON 数据的第 1 行第 1 列出现意外字符

php - 向在新窗口中打开的 Woocommerce 我的帐户订单添加操作按钮

ios - 在 Parse 中查询列

swift - 点击 "Load More"时 PFQueryTableViewController 崩溃(分页)

php - 使用PHP将日期数据插入Mysql表

javascript - laravel 中的 GPS 位置跟踪

laravel - 我可以使用内存数据库启动 Laravel 服务器吗?