2 Stimmen

PHP strlen Frage

Ok, ich überprüfe, ob eine Zeichenkette mindestens 4 Zeichen lang und 25 oder weniger Zeichen kurz ist

Ich habe versucht, strlen wie folgt zu verwenden

$userNameSignupLength = strlen($userNameSignup);

else if($userNameSignupLength<4 && $userNameSignupLength>25) {

            $userNameSignupError = "Must be between 4 to 25 characters long";

        }

aber es funktioniert nicht... was habe ich falsch gemacht?

8voto

Gumbo Punkte 617646

使用方法 strlen ist richtig, um die Länge einer Zeichenkette (in Bytes) zu prüfen. Aber eine Zahl kann nicht gleichzeitig kleiner als 4 sein et mehr als 25 zur gleichen Zeit. Verwenden Sie || stattdessen:

if ($userNameSignupLength < 4 || $userNameSignupLength > 25)

Nun ist die Bedingung erfüllt, wenn die Zahl entweder kleiner als 4 ist o größer als 25.

2voto

Kevin Punkte 12936

Ändern Sie das && in ||

else if ($userNameSignupLength<4 || $userNameSignupLength>25)

2voto

Andy Shellam Punkte 14907

Ich glaube, Sie wollen dort einen OP:

else if($userNameSignupLength < 4 || $userNameSignupLength > 25) {

Wie Gumbo sagte, kann die Länge nicht gleichzeitig kleiner als 4 UND größer als 25 sein. && bedeutet and .

2voto

Chris Walsh Punkte 3275

Und lassen Sie das 'else' vor dem 'if'-Schlüsselwort weg!

-1voto

atif Punkte 89

Anhand Ihres Codes ist ersichtlich, dass Sie versuchen, ein Textfeld zu validieren. Sie haben diesen Code nicht mit html geteilt. Wie auch immer, aus meiner Erfahrung heraus würde ich sagen, dass Sie nicht && verwenden sollten. Sie sollten || verwenden. Auch sollten Sie nicht direkt else if verwenden. Sie sollten if für diesen Code verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X