首页 > 解决方案 > PHP在数组中找不到现有键

问题描述

标签: phpweb

解决方案


您应该做的是将您的密钥转换为 utf8,例如,您使用“\xe2\x99\xa1”而不是“♡”

使用 json_decode 显示 utf8 字符很容易,所以:

<?php
$chr = "\xe2\x99\xa1";
$chr2 = "\xe2\x99\xa4";
echo json_decode('"'.$chr.'"');
$array[$chr] = "Something";
$array[$chr2] = "SomeValue";
echo '<pre>';
print_r($array);
echo '<pre>';
print_r($array[$chr]);
echo '<pre>';
print_r($array[$chr2]);

这将返回:

♡
Array
(
    [♡] => Something
    [♤] => SomeValue
)
Something
SomeValue

您应该事先知道所有密钥的 utf8。... https://www.browserling.com/tools/utf8-encode <很好的在线工具。


推荐阅读