kostenloser Webspace werbefrei: lima-city


Mit Strings rechnen?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    k****8

    Ich wei?, dass man standartgem?? mit Strings nicht rechnen kann, aber ich habe mich gefragt ob es ne m?glichkeit gibt es doch irgendwie zu machen?

    Also z. B. so:


    <?php
    $var = "a";
    echo $var++;
    ?>


    Ausgabe: "b"

    oder so:

    <?php
    $var = "Hallo";
    echo $var++;
    ?>


    Ausgabe: "Hallp"

    Ist halt jetzt numeral
    Gibt es in irgend einer Form diese M?glichkeit?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. s*n

    Aloha,

    also du kannst folgendes machen:

    <?php
    $string = "a";
    
    $ascii_old = ord($string);
    // Der Ascii-Wert von "a", sollte 97 sein
    $ascii_new = $ascii_old + 1;
    // Der neue Ascii-Code = 98
    $string_new = chr($ascii_new);
    // Den neuen Ascii-Wert wieder zur?ckwandeln
    
    echo $string_new; //sollte b ergeben
    ?>


    So ungef?hr k?nntest du auch mit Hallo verfahren.

    MfG
  4. Autor dieses Themas

    k****8

    Danke, nur leider wandelt er bei "mehrbuchstabigen" Strings nur das erste Zeichen um

    Gibt es da vielicht nen einfachen weg, oder m?sste ich f?r jede Wortfolge ne eigene Variable verwenden bzw. ne schleife Basteln?
  5. Hi,

    eigentlich k?nntest du wie mit hexdec() einen string zu einer Zahl umwandeln und wie mit dechex() eine Zahl zu einem String verwandeln.
    Dazu m?sste man sich nur eine Funktion schreiben, die mit a-z oder noch mehr arbeitet.

    mfg,
    hr
  6. Vielleicht w?re es sinnvoll erst mal zu sagen, was du ?berhaupt machen willst...
    Meistens liegt "der Fehler" n?mlich darin. ;-)

    MfG Lucas
  7. Hi,

    ich hab zwei funktionen geschrieben mitdenen man einen String in eine Nummer verwandelt und weider zur?ck. Wenn man die Nummer um eins erh?ht bzw. verkleinert, so ergibt sich genau den effekt, den du wolltest.

    Zum den Funktionen:
    Die beiden Funktionen wandeln jeweils die Zahl bzw. den String auf basis der Variabel $chrs (als Parameter) um.
    string instr( int zahl [, string chrs] )
    int instr( string zeichenkette [, string chrs] )

    function intstr($int,$chrs = "abcdefghijklmnopqrstuvwxyz") {
      $chrslen = strlen($chrs);
      $str = "";
      while ($int > 0) {
       $str = $chrs[$int % $chrslen] . $str;
       $int = floor($int / $chrslen);
      }
      return $str;
    }
    
    function strint($str,$chrs = "abcdefghijklmnopqrstuvwxyz") {
      $chrslen = strlen($chrs);
      $str = strtolower($str);
      $strlen = strlen($str);
      $int = 0;
      for ($i = 0; $i < $strlen; $i++) {
       $int += strpos($chrs,$str[$i]) * pow($chrslen,$strlen - $i - 1);
      }
      return $int;
    }


    Als beispiel k?nnte man jetzt folgendes tun:
    $str = "Hallo";
    
    $int = strint($str);
    $int += 1;
    
    $str = intstr($int);
    
    print $str; // Zeigt "Hallp"


    Vielleicht hilft dir das ja weiter.
    Ich nehme zwar an, dass die Veriante von svn einfacher und praktischer ist, aber diese beiden Funktionen sind auch ziehmlich interessant.

    mfg,
    hr
  8. Autor dieses Themas

    k****8

    Joa, danke, genau dass wollte ich haben
    Es hat keinen wichtigen Sinn, ich will nur mein Verst?ndiss f?r PHP ?ben und habe mich gefragt, ob man dass anwenden kann.

    Aber ich hab so kranke ideeen, ich werde dass warscheinlich schon bald verwenden ^^

    Toll gemacht, Jungs

    Beitrag ge?ndert am 1.06.2006 00:11 von kai008
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!