2011-09-13 10 views
1

私はプッシュ通知スクリプトをPHPで作成しています。 $deviceTokenは正しいですが、私はこの行に警告をしました:push通知スクリプトのpack()に関する警告

$b = pack('H*', str_replace(' ', '', $deviceToken)); 

警告はこれです:

警告:パック()[function.pack]:タイプH:違法進/myurl.com/send_push_notification.php 33行目

通知は届きません。

あなたはその理由を知っていますか?

+0

(私はそれが解析しないため、これはコピー/ペースト誤りだと思いますが)としたときに 'エコーstr_replaceも、あなたは何を得るのです:コードの下に使用してみてください''、 ''、$ deviceToken); '? – DaveRandom

+0

はい、申し訳ありませんが、コピー&ペーストの間違いでした...もちろん、PHPスクリプトには) – JAA

+1

$ deviceTokenの値は何ですか? '123ABCZ'があれば、' Z'は不正な16進数の警告をトリガします。 Zは何でも構いません。 –

答えて

2

私は同じ問題を抱えていました。 私は

trim($device_token) 

代わりの

str_replace(' ', '', $deviceToken) 

を使用して終了は、最終的に問題を修正しました。

+0

はい、これは私のために働いた。空白はデバイストークンの後ろにあります。 – Raptor

+0

私は 'str_replace( ''、 ''、$ deviceToken)'の代わりに 'trim($ device_token)'を使っていますが、プッシュ通知はiphoneデバイスに届いていません – lalith458

0

私は同じ問題がありました。最後に、URLに空白文字があることがわかりました。 URLを確認してください。おそらくそれがエラーです。

0

私も同じ問題を抱えていました。それは私の問題を解決した。 ( `)`あなたが閉鎖を欠けている

chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $item[0])) . chr(0) . chr(strlen($payload)) . $payload; 
関連する問題