В PHP что это означает, что функция  binary-safe?
Что делает их особенными и где они обычно используются?
В PHP что это означает, что функция  binary-safe?
Что делает их особенными и где они обычно используются?
Это означает, что функция будет работать правильно, когда вы передадите произвольные двоичные данные (т.е. строки, содержащие байты не ASCII и/или нулевые байты).
Например, функция, отличная от двоичного кода, может быть основана на функции C, которая ожидает строки с нулевым завершением, поэтому, если строка содержит нулевой символ, функция будет игнорировать что-либо после нее.
Это актуально, потому что PHP не очищает строковые и двоичные данные.
Другие пользователи уже упомянули, что означает binary safe.
В PHP значение более конкретно, ссылаясь только на то, что дает Майкл в качестве примера.
Все строки в PHP имеют длину, связанную с количеством байтов, которые ее составляют. Когда функция управляет строкой, она может:
0.Также верно, что все строковые переменные PHP, управляемые движком, также заканчиваются на нуль. Проблема с функциями, которые полагаются на 2., состоит в том, что если сама строка содержит байт со значением 0, то функция, которая манипулирует им, будет думать, что строка закончилась в этой точке и будет игнорировать все после этого.
Например, если функция PHP strlen работала как стандартная библиотека C strlen, результат здесь был бы неправильным:
$str = "abc\x00abc";
echo strlen($str); //gives 7, not 3!
		Дополнительные примеры:
<?php
    $string1 = "Hello";
    $string2 = "Hello\x00World";
    // This function is NOT ! binary safe
    echo strcoll($string1, $string2); // gives 0, strings are equal.
    // This function is binary safe
    echo strcmp($string1, $string2); // gives <0, $string1 is less than $string2.
?>
 \x указывает шестнадцатеричную нотацию. Смотрите: строки PHP
0x00 = NULL
0x04 = EOT (End of transmission)
Таблица ASCII, чтобы увидеть список ASCII char
Это означает, что функция может работать и давать желаемые результаты даже с двоичными данными в качестве части своих аргументов.