2010-05-27 6 views

Répondre

0

Les données que vous obtiendrez sont dans les éléments qui ont un "nom" avec, quel que soit le mode de soumission par utilisateur ou par fonction javascript.
en code php il vous suffit de prendre les données affichées et de vérifier leur taille.

0

utilisateur gliff de webmasterworld.com dit:.

" que tout dépend du caractère codant pour un caractère ASCII prend un octet pour stocker Cependant, si vous êtes traitant de plusieurs. -byte chaînes et/ou Unicode, un caractère ne correspond pas nécessairement à un octet

Je suis/j'espérais qu'il y a un 01 intégréfonction que j'ai ignoré que prend automatiquement tout cela dans le compte et crache comme par magie un numéro . "

Je pensais que son mieux coller ici et crédit EnCase la page n'existe plus


Une fois que vous obtenez votre type, la fonction intégrée serait quelque chose comme:.

mb_strlen($utf8_string, 'latin1'); 
+0

Merci pour votre rejeu pouvez-vous m'envoyer la fonction intégrée. Il va grandir pour moi. – Anurag

0

Il y a deux options pour un nombre d'octets, utilisez strlen:.

$boxlen = strlen($_POST['field']); 

Pour une longueur de caractère, si vous avez installé mb_string:

$boxlen = mb_strlen($_POST['field']); 

Notez que si vous avez mbstring function overloading sur, le strlen() ne sera pas précis. Pour vérifier:

$mask = ini_get('mbstring.func_overload'); 
if (($mask & 2) === 2) { 
    //strlen is overloaded 
} 

S'il est surchargé, et que vous voulez un nombre d'octets, vous aurez à faire quelque chose d'un peu désordonné. Du haut de ma tête, le plus « juste » manière que je peux penser serait quelque chose comme:

function getByteCount($str) { 
    $mask = ini_get('mbstring.func_overload'); 
    if (($mask & 2) === 2) { 
     //strlen is overloaded 
     return mb_strlen($str, 'latin1'); 
    } else { 
     return strlen($str); 
    } 
} 

NOTE: Que la méthode mb_strlen() ne serait nécessaire que si strlen() est surchargée par mb_string. Sinon, cela fonctionnera bien pour la longueur des octets.

EDIT: Ajouté() autour de la comparaison de bits (Nécessaire en raison de l'ordre de l'opérateur).

Questions connexes