recherche
  • Se connecter
  • S'inscrire
Réinitialisation du mot de passe réussie

Suivez les projets qui vous intéressent et découvrez les dernières actualités les concernant.

Maison développement back-end PHP Manuel des nouvelles fonctionnalités de PHP7 Modification du mécanisme de traitement des chaînes

Modification du mécanisme de traitement des chaînes

1. Les chaînes contenant des caractères hexadécimaux ne sont plus traitées comme des nombres

Les chaînes contenant des caractères hexadécimaux ne sont plus traitées comme des nombres et ne seront plus traitées différemment. Par exemple, le code suivant :

var_dump("0x123" == "291");     // bool(false)     (previously true)
var_dump(is_numeric("0x123"));  // bool(false)     (previously true)
var_dump("0xe" + "0x1");        // int(0)          (previously 16)
var_dump(substr("foo", "0x1")); // string(3) "foo" (previously "oo")
// Notice: A non well formed numeric value encountered
peut utiliser la fonction filter_var pour vérifier si une chaîne contient des caractères hexadécimaux ou si elle peut être convertie en un entier
$str = "0xffff";
$int = filter_var($str, FILTER_VALIDATE_INT, FILTER_FLAG_ALLOW_HEX);
if (false === $int) {
    throw new Exception("Invalid integer!");
}
var_dump($int); // int(65535)

2. Si u{ contient des caractères illégaux plus tard, une erreur sera signalée

Guillemets doubles et héréditaires La syntaxe d'échappement des points de code Unicode a été ajoutée à la grammaire "u{" doit être suivi de caractères UTF-8. S'il s'agit d'un caractère non utf-8, une erreur sera signalée :

$str = "\u{xyz}"; // Fatal error: Invalid UTF-8 codepoint escape sequence
peut éviter cette erreur en échappant à la première.
 $str = "\u{xyz}"; // Works fine

S'il n'y a pas de { après "u", cela n'a aucun effet :

$str = "\u202e"; // Works fine

PHP IntlChar()

PHP 7 prend en charge l'internationalisation (i18n) et la localisation (l10n) via l'extension intl. Cette extension n'est qu'un wrapper de base pour la bibliothèque ICU et fournit des méthodes et fonctionnalités similaires à la bibliothèque ICU.

PHP 7 expose les fonctionnalités des caractères Unicode dans ICU via la nouvelle classe IntlChar. Cette classe elle-même définit de nombreuses méthodes statiques pour manipuler les caractères Unicode dans plusieurs jeux de caractères.

Exemple

<?php
printf('%x', IntlChar::CODEPOINT_MAX);
echo IntlChar::charName('@');
var_dump(IntlChar::ispunct('!'));
?>

Le résultat de l'exécution du programme ci-dessus est :

10ffff
COMMERCIAL AT
bool(true)
Outils d'IA chauds
Undress AI Tool
Undress AI Tool

Images de déshabillage gratuites

AI Clothes Remover
AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undresser.AI Undress
Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

Stock Market GPT
Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outil populaire
Bloc-notes++7.3.1
Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6
Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac
SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)