Невозможно преобразовать двоичную строку в обычную - PullRequest
0 голосов
/ 19 мая 2018

Я читаю из файла через 'file_get_contents'.После взрыва контента один из элементов представлен таким образом, когда я его выгружаю:

dd($myVariable);

b "Crédito"

Я читал в Интернетечто это какая-то «бинарная» строка, связанная с PHP версии 6, которой никогда не было.Но я просто не могу найти способ преобразовать ее в «обычную» строку.

Я думал, что они как-то эквивалентны, но я даже не могу использовать это для сравнения с другой строкой.Например, ни один из них никогда не вернет true:

if ($myVariable == "Crédito") 
if ($myVariable === "Crédito")
if ($myVariable == b"Crédito")
if ($myVariable == (binary)"Crédito")

Как я могу преобразовать его в обычную строку?

1 Ответ

0 голосов
/ 19 мая 2018

Вам необходимо распаковать двоичные данные в читаемую строку, используя функцию unpack (http://php.net/manual/en/function.unpack.php)

Пример строки:

$var = b"binary";
$unpacked = unpack("a*", $var); // "a*" stands for as much as NUL-padded strings as possible
var_dump($unpacked);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...