Répondre
La fonction chr()
convertit un octet en son équivalent ASCII et la fonction intval()
obtient la valeur entière d'une variable.
Si nous devions briser la déclaration en deux lignes différentes, ce serait:
$a = chr(255); // $a is now a string
echo intval($a);
Si vous consultez la documentation de intval()
vous remarquerez que:
Strings recommencera très probablement 0 bien que cela dépend des caractères les plus à gauche de la chaîne. Les règles communes de la coulée d'entier s'appliquent.
C'est pourquoi le résultat est nul.
L'octet 0xFF ne représente pas un chiffre soit octal, décimal ou hexadécimal ce que intval
on cherche. Vous avez probablement voulu le ord
function.
Pour la sortie 255, vous avez besoin:
echo intval(ord(chr(255)));
Il y a 128 nombres ordinaux en ASCII, la 255 sort pour être ÿ
donc quand vous le convertir en un certain nombre avec intval
, il sera 0.
Parce que chr
fournit une chaîne, dans ce cas avec un seul caractère, le caractère 0xFF, ou mieux connu sous le nom ÿ
. D'autre part fait une conversion d'une chaîne en un entier basé sur le contenu de la chaîne, et non les caractères.
echo intval("33"); // will print 33
echo intval("10", 8); // will print 8
echo intval("0xFF", 16); // will print 255
echo intval("m"); // will print zero...
//you can't convert letters like that to numbers.
chr(255)
retourne un caractère correspondant à ASCI 255
et intval
essayer de faire une partie entière d'une variable
depuis chr (255) retourne un caractère non numérique de sorte intval
get pas de valeur int et retour 0
- 1. Pourquoi Color.FromArgb (255, 255, 255, 255)! = Couleur.Blanc?
- 2. Pourquoi `null> = 0 && null <= 0` mais pas` null == 0`?
- 3. Pourquoi keylistener ne fonctionne pas ici?
- 4. Pourquoi eval échoue ici?
- 5. pourquoi la largeur ne fonctionne pas ici?
- 6. Pourquoi -isMemberOfClass: ne fonctionne pas ici?
- 7. Conversion d'un octet aléatoire (0-255) en float en PHP?
- 8. Pourquoi j'ai NullPointerException ici?
- 9. Comment puis-je remplacer {0} mais pas {{0}}?
- 10. Pourquoi puis-je interroger avec un int mais pas une chaîne ici? PHP MySQL Datatypes
- 11. fonctionne arguments.length mais pas l'argument [0] .value
- 12. Pourquoi la méthode toString ne fonctionne pas ici?
- 13. Pourquoi utiliser jsp: useBean ici mais pas simplement créer un nouvel objet? Dans
- 14. Pourquoi mon constructeur par défaut n'est-il pas appelé ici? Pourquoi mon constructeur par défaut n'est-il pas appelé ici?
- 15. pourquoi est-ce.offsetLeft 0?
- 16. Java: Pourquoi l'autoboxing ne se passe-t-il pas ici?
- 17. fonctionne dans viewDidLoad mais pas CellForRowAtIndexPath - pourquoi?
- 18. WCF: Pourquoi HttpResponse n'est-il pas enregistré ici?
- 19. Pourquoi ne fonctionne-t-il pas comme je l'espère ici?
- 20. Pourquoi ma variable de session n'est-elle pas définie ici?
- 21. Pourquoi 12h20 analyser à 0:20 le jour suivant?
- 22. Javascript: Pourquoi utiliser une fonction anonyme ici?
- 23. Pourquoi l'index String # retourne-t-il ici?
- 24. Pourquoi mon sélecteur jquery ne fonctionne-t-il pas ici?
- 25. Pourquoi les collections Java ont-elles des aides pour 0 ou 1 mais pas plus d'éléments?
- 26. WIA.DeviceManager.DeviceInfos.Count = 0. Pourquoi?
- 27. Pourquoi stringValue échoue-t-il ici?
- 28. CurrentDb.RecordsAffected renvoie 0. Pourquoi?
- 29. Pourquoi CreateWindowEx retour 0
- 30. Math.min.apply (0, tableau) - pourquoi?
Il y a seulement 128 caractères en US-ASCII. – Gumbo