print_r(json_decode('{"t":"\u05D0\u05E0\u05D2\u05DC\u05D9\u05EA"}'));
это работает и дает вывод на иврите, но когда я вместо имени жестко запрограммировал имя строки
(print_r(json_decode($str));
где
$str = "\u05ea\u05b5\u05bc\u05dc\u05be\u05d0\u05b8\u05d1";)
тогда это дает пустой вывод
Что ж, \u05ea\u05b5\u05bc\u05dc\u05be\u05d0\u05b8\u05d1
не является строкой JSON, тогда как {"t":"\u05D0\u05E0\u05D2\u05DC\u05D9\u05EA"}
является. Так json_decode
вернусь NULL
в следствии.
Пожалуйста, прочитайте о JSON и особенно функции json_encode () а также json_decode ().
$str = '{"t":"\u05D0\u05E0\u05D2\u05DC\u05D9\u05EA"}';
ваша переменная $ str имеет неправильный синтаксис массива json .. поместите строку выше в $ str
Строки не одинаковы. В первом примере кода ваша строка представляет собой объект JSON со строкой, содержащей символы Юникода. Во втором примере это просто строка в кодировке Unicode, которая, я полагаю, не является допустимой JSON, поэтому json_decode
не могу справиться с этим.