PHP Doku:: Auf Leerzeichen überprüfen - function.ctype-space.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzVariablen- und typbezogene ErweiterungenZeichentypprüfungCtype Funktionenctype_space

Ein Service von Reinhard Neidl - Webprogrammierung.

Ctype Funktionen

<<ctype_punct

ctype_upper>>

ctype_space

(PHP 4 >= 4.0.4, PHP 5)

ctype_spaceAuf Leerzeichen überprüfen

Description

bool ctype_space ( string $text )

Prüft ob jedes Zeichen in text irgendeine Art Leerzeichen erzeugt. Neben dem eigentlichen Leerzeichen schließt das auch TAB, Zeilenforschub, Carriage Return und Formularvorschub mit ein.

Parameter-Liste

text

Der zu prüfende String.

Rückgabewerte

Liefert TRUE wenn jedes Zeichen in text ein Leerzeichen ist (space, tab, linefeed ...), sonst FALSE.

Beispiele

Beispiel #1 ctype_space() Beispiel

<?php
$strings 
= array('string1' => "\n\r\t"'string2' => "\narf12"'string3' => '\n\r\t');
foreach (
$strings as $name => $testcase) {
    if (
ctype_space($testcase)) {
        echo 
"Der String '$name' besteht aus Leerzeichen.\n";
    } else {
        echo 
"Der String '$name' enthält nicht nur Leerzeichen.\n";
    }
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Der String 'string1' besteht aus Leerzeichen.
Der String 'string2' enthält nicht nur Leerzeichen.
Der String 'string3' enthält nicht nur Leerzeichen.

Siehe auch

  • ctype_cntrl() - Auf Steuerzeichen überprüfen
  • ctype_graph() - Auf druckbare Zeichen (außer Leerzeichen) überprüfen
  • ctype_punct() - Prüft auf Sonderzeichem, d.h. auf druckbare Zeichen die weder Buchstaben noch Ziffern noch Leerzeichen sind.


4 BenutzerBeiträge:
- Beiträge aktualisieren...
gardnerjohng at hotmail dot com
15.09.2009 6:00
A function I wrote last night was fairly flexible in terms of detecting whitespace, and even took into account the pesky non-breaking spaces / zero-width spaces further up the Unicode alphabet.

The benefit here was being able to isolate and identify specific Unicode indices based on their subrange.

<?php
   
//    Returns TRUE if the ASCII value of $string matches a registered whitespace character.
    //    *    This includes non-breaking spaces, zero-width spaces, and any unicode values below 32.
    //    *    $string: Character to identify. If string extends past one character, the value
    //        is truncated and only the initial character is examined.
   
function is_whitespace($string){
       
//    Return FALSE if passed an empty string.
       
if($string == "") return FALSE;
       
       
$char    =    ord($string);
       
       
//    Control Characters
       
if($char < 33)                        return TRUE;
        if(
$char > 8191 && $char < 8208)    return TRUE;
        if(
$char > 8231 && $char < 8240)    return TRUE;
       
       
//    Additional Characters
       
switch($char){
            case
160:    // Non-Breaking Space
           
case 8287:    // Medium Mathematical Space
               
return TRUE;
                break;
        }
        return
FALSE;
    }
?>
per dot zut at gmail dot com
22.07.2008 21:48
The contradiction bellow brutaly forced me to do some testing.

ctype_space(""), as well as ctype_space(NULL), returns false
ctype_space(), returns NULL, with a warning

(PHP Version 4.4.8)
abozzay at yahoo dot com
7.05.2008 23:53
PHP Version 5.2.3-1ubuntu6
ctype_space("") returns false
Anonymous
17.10.2007 17:46
ctype_space("") i.e. the empty string, returns true



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)