Drupalのフィールドのデータに基づいて設定しているCookieがあります。PHPを使用してCookieを作成すると、拡張ASCII文字は16進コード(例:%7E)として表示されますが、JavaScriptを使用して同様のCookieを作成すると、拡張ASCII文字は単一文字(例:〜)としてCookieに表示されます。
これは私がクッキーに入れたい文字列です。
Section1~email,email.calendar,calendar.wordpresssml,wordpress.moodlesml,moodle.maharasml,mahara.gdrive,gdrive.eportfolio,eportfolioblogs.wiki,wiki.youtube,email.feature,feature|Section2~reader,reader|
使用する場合
setcookie("p", "Section1~email,email.calendar,calendar.wordpresssml,wordpress.moodlesml,moodle.maharasml,mahara.gdrive,gdrive.eportfolio,eportfolioblogs.wiki,wiki.youtube,email.feature,feature|Section2~reader,reader|", $expire);
私は得る Section1%7Eemail%2Cemail.calendar%2Ccalendar.wordpresssml%2Cwordpress.moodlesml%2Cmoodle.maharasml%2Cmahara.gdrive%2Cgdrive.eportfolio%2Ceportfolioblogs.wiki%2Cwiki.youtube%2Cemail.feature%2Cfeature%7CSection2%7Ereader%2Creader%7C
私が欲しい文字列ではなく。JavaScriptを使用してCookieを作成すると、正常に機能します。これがエンコーディングの問題であることは知っていますが、PHPに拡張ASCII文字のフルセットを使用してCookieを書き込んでもらいたいと思います。