Co oznacza b''
("ciąg binarny") w oświadczeniu PHP $str=b'xxxxxx';
?W PHP, co jest ciągiem binarnym (b'xxxx ')?
Odpowiedz
$number = decbin(59);
echo $number . "\n"; //111011
$number = bindec($number);
echo $number . "\n"; //59
decbin(int $number): Zwraca ciąg zawierający binarną reprezentację danej liczby argumentów.
bindec(string $bstring): Zwraca dziesiętny odpowiednik liczby binarnej w argumencie bstring.
To odpowiada na niewłaściwe pytanie ... przyznane, pytanie nie było dobrze napisane, ale odnosi się do typu "binarnego ciągu" używanego w składni 'b'xxxx'' w PHP, a nie do liczby binarnej reprezentowanej jako ciąg tekstowy. –
PHP language reference opisuje rozróżnienie między ciągi Unicode i rodzimych ciągów binarnych, oznaczoną b'this jest ciąg binarny”
To nie wydaje się być metoda przedstawiania liczb binarnych.
Zapis „jest dostępna od PHP 5.2.1, jednak będzie to miało efekt tylko od PHP 6.0.0”
Źródło twojej odpowiedzi jest w rzeczywistości komentarzem użytkownika w dokumentacji PHP: http://php.net/manual/fr/language.types.string.php#93576 To nie jest zbyt wiarygodne. –
Oto bardziej wiarygodna dokumentacja: https://web.archive.org/web/20090403051843/http://us2.php.net/manual/en/function.is-binary.php –
„binarny ciąg” jest to, co mamy teraz w php - ciąg bajtów , które (w przeciwieństwie do języka C) może również zawierać nul-bajt. Jest to (lub będzie, jak w PHP 6) różne od ciągów unicode, które są sekwencjami znaków dwubajtowych.
Struny binarne zostały wprowadzone w PHP 5.2.1, ale oczekiwano, że zaczną obowiązywać dopiero począwszy od PHP 6. Była to próba rozróżnienia łańcuchów znaków Unicode i binarnych. Pierwszy z nich to nowy format ciągów, drugi to bieżący format, ale zmieniony na notację "b".
Jak wiadomo, PHP 6 zostało porzucone, a format napisów nie zmienił się. Notacja "b" to tylko relikt z tamtej epoki.
'foobar' === b'foobar'; // true
Więc w dzisiejszych czasach (PHP 5 i 7), ciąg binarny jest tylko format string. Kodowanie znaków (które może być wielobajtowe) jest zarządzane na "wyższym poziomie", przez twój edytor tekstu, przeglądarkę internetową itp. Możesz traktować ciąg binarny jako łańcuch składający się z pełnego zakresu wartości bajtów 0-255.
Ciąg znaków niedrukowalnych i tym podobne, można nim manipulować w PHP jak każdy inny ciąg znaków, ale spowoduje to wyświetlenie go przez śmieci. Również niektóre znaki mają specjalne znaczenie: \0
oznacza zakończenie znaków w C i SQL, są znaki kontrolne itp. Tak więc, gdy tylko użyjesz ich poza PHP, napotkasz problemy. Na przykład random_bytes()
tworzy takie ciągi.
Występują problemy z JSON. Ale PHP losowo zwraca mój ciąg z "b", a czasem bez. Dlatego czasami mój JSON nie jest renderowany, a czasami jest ... To doprowadza mnie do szału! Jeśli ktoś jest w tym przypadku, warto wiedzieć, że JSON nie obsługuje tego "b" – Delphine
Zapraszam do opublikowania pytania w twojej sprawie. –
- 1. Różnica między ciągiem binarnym, ciągiem bajtowym, ciągiem unicode i zwykłym ciągiem znaków (str)
- 2. co jest "$$" w PHP
- 3. Co to jest odpowiednik preg_quote w PHP?
- 4. Co to jest: w php?
- 5. Pobierz numery z ciągiem w PHP
- 6. Usuwanie apostrofu z ciągiem w php
- 7. Co to jest PHP track_errors?
- 8. PHP/Amazon S3: uwierzytelnianie ciągiem zapytań
- 9. Co jest nie tak z tym ciągiem formatu?
- 10. Co to jest lambda w PHP?
- 11. W języku PHP, co to jest Tick?
- 12. Co to jest wzór fabryczny w PHP?
- 13. Co to jest nazywane w php: ->
- 14. co jest odpowiednikiem = ~ ruby w php?
- 15. PHP znaczniki usuwania HTML z ciągiem
- 16. PHP DOMDocument zastępuje dziecko DOMElement ciągiem HTML
- 17. Sprawdź, czy drzewo jest drzewem binarnym wyszukiwania
- 18. PHP Błąd: Nazwa funkcji musi być ciągiem
- 19. SplObjectStorage nie działa z ciągiem, co robić?
- 20. PHP regex: co to jest "klasa na offset 0"?
- 21. Tworzenie instancji klasy PHP z ciągiem
- 22. Wyświetl plik w formacie binarnym
- 23. ListView ColumnHeader.Name jest pustym ciągiem
- 24. Jaki jest sens \ x00 \ X04 w PHP
- 25. Co oznacza ":" w PHP?
- 26. Sprawdź, czy wartość jest ciągiem w Coldfusion
- 27. Różnica między kompletnym drzewem binarnym i zbalansowanym drzewem binarnym
- 28. JSON.stringify (nieokreślone) nie jest ciągiem
- 29. jest ciągiem zapytania z/jest ważny?
- 30. Gdzie jest kod dla domyślnej obsługi sygnału w binarnym ELF?
Masz pytanie? –
Czy możesz wyjaśnić nieco więcej, co masz na myśli? – Gumbo