【问题标题】:Sending emoticons from iPhone to CakePHP but received blank value将表情从 iPhone 发送到 CakePHP 但收到空白值
【发布时间】:2012-02-29 21:48:33
【问题描述】:

我正在开发一个 iPhone 应用程序,可以将表情符号从 iPhone 发送到服务器端。

但是,服务器端每次收到的总是空的(或空白?)。

我在 SO 推荐了here,但没有任何帮助。
我也提到了 HTML_Emoji,但这似乎不是一个简单的编码或转义字符问题。

是运营商表情码的问题吗?

那么,如何在 CakePHP 中接收正确的表情符号?
或者这不仅仅是 CakePHP 框架中的问题,而是 PHP 或 Java 或其他任何语言中的问题?

我正在开发的是webservice(服务器端),而iPhone应用程序的开发是其他合作伙伴。从 iPhone 发送的内容按他们的说法和 Xcode 中的日志输出(例如 \Ud83c\Udfe7)在调试时没有问题,但我只是在服务器端接收到它们的空白值。

顺便说一句,从我们的 iPhone 应用程序发送的一条消息仅包含纯文本,它可以被正确接收(在 CakePHP 中由 $_POST 接收);
带有表情的消息,php收到的只是没有表情的纯文本。

谢谢。

【问题讨论】:

  • 你是如何准确发送它们的,你如何确定它们是“空白的”?!不要遗漏关键细节。
  • 不,这不是运营商代码问题。你如何将它们从 iPhone 发送到 CakePHP?请向我们展示您的一些代码,以便我们提供帮助。
  • 我开发的是webservice(server-side),iPhone app的开发是其他合作伙伴。从 iPhone 发送的内容按他们的说法和 Xcode 中的日志输出(例如 \Ud83c\Udfe7)在调试时没有问题,但我只是在服务器端收到它们的空白值。对不起,我真的不明白你的确切是什么意思:(,但这只是我遇到的情况。谢谢。顺便说一句,我可以在没有情绪的情况下收到正确的消息服务器端。
  • 再次,您如何确定它是“空白”?你的代码是什么?你没有收到 anything 服务器端吗?你不能解码JSON吗?表情符号是“空白”吗? “服务器端每次收到的总是空的”到底是什么意思?你会期待什么?
  • 从我们的 iPhone 应用发送的一条消息,只有纯文本,可以正确接收(由 CakePHP 中的 $_POST 接收);消息中有表情符号,php收到的只是没有表情符号的纯文本。所以我可以确定它是空白。我不会手动解码来自 json 的文本,因为 CakePHP 会为我完成工作(即使没有表情符号的消息是从 iPhone 发送编码的,也可以正确接收)。谢谢。

标签: iphone cakephp encoding


【解决方案1】:

我认为您要做的是发送“图像”文件并让 php 捕获该数据。为此,您需要使用以下内容“捕获”图像数据:

$img_data = file_get_contents('php://input');

如果您打算使用 PHP 而不管框架如何,这是 PHP 特定的。您可以在此处阅读有关如何捕获此数据的更多信息:

http://php.net/manual/en/wrappers.php.php

更新

您需要将其存储为 blob,以便正确存储图像数据。

【讨论】:

  • 感谢您的回复。我昨天尝试过,但没有用 - 结果与 $_POST 相同。 :(
  • 对不起,各位。这是我的错,我认为它无法在 php 中收到。其实 CakePHP 可以接收,但问题是当插入 MySQL 表时,表情符号在表字段(varchar)中变为空白。我插入的是类似 \Ud83d\Ude04 的东西,它只是 iPhone 中常见的微笑图标。我怎么能逃脱它?它类似于 json 编码/解码。谢谢。
  • 谢谢@Chuck-Burgess。对不起,但我想我应该打开一个关于 DB(MySQL) 的新话题,因为问题似乎不是 php 帖子接收。
猜你喜欢
  • 1970-01-01
  • 2020-03-08
  • 2012-03-19
  • 1970-01-01
  • 2014-07-20
  • 1970-01-01
  • 2014-05-25
  • 1970-01-01
  • 2016-01-14
相关资源
最近更新 更多