PHP Versionsausgabe

  • PHP

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Link.

    PHP Versionsausgabe

    Huhu :)

    ich habe eine Version.php in dieser kommt folgende ausgabe z.b.

    1.0.0.5

    dies ist eine versionsnummer für formular XY.

    nun würde ich gerne wenn ich eine upload.php anstarte

    diesen wert auslesen und anschließen den wert +1 hochsetzen

    Sprich

    1.0.0.5 => 1.0.0.6
    1.0.0.6 => 1.0.0.7
    .
    .
    .
    .
    1.0.0.99=> 1.0.1.0


    Hoffe mir kann jemand helfen bin in php ne niete

    Lg.

    PHP-Quellcode

    1. list ($one, $two, $three, $four) = split('[.]', $version);
    2. if (($four+1)<100){
    3. $version = "$one.$two.$three.".($four+1);
    4. }else{
    5. $four = 0;
    6. if (($three+1)<100){
    7. $version = "$one.$two.".($three+1).".$four";
    8. }else{
    9. $three=0;
    10. if (($two+1)<100){
    11. $version = "$one.".($two+1).".$three.$four";
    12. }else{
    13. $two=0;
    14. $version = ($one+1) .".$two.$three.$four";
    15. }
    16. }
    17. }
    18. echo $version ;


    habs nun so gelöst trotzdem danke
    Hi,

    warum so kompliziert?

    PHP-Quellcode

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <style>
    5. *{
    6. padding: 0px;
    7. margin: 0px;
    8. font-family: "courier new";
    9. }
    10. main{
    11. padding: 32px;
    12. margin: 32px;
    13. background-color: #fafafa;
    14. border: 1px solid #dddddd;
    15. }
    16. </style>
    17. </head>
    18. <body>
    19. <main>
    20. <br><br>
    21. <?php
    22. $version = "1.0.9.9";
    23. $b = 10;
    24. if(isset($_POST['version'])){
    25. if(@preg_match('/^[0-9\.]+$/i', $_POST['version'])){
    26. $version = $_POST['version'];
    27. }else{
    28. echo "<p>Ung&uuml;ltige Versions-Nummer</p>";
    29. }
    30. }
    31. if(isset($_POST['b'])){
    32. if(@preg_match('/^[0-9]+$/i', $_POST['b'])){
    33. $b = $_POST['b'];
    34. }else{
    35. echo "<p>Ung&uuml;ltige Z&auml;hlbasis</p>";
    36. }
    37. }
    38. $arr = explode('.', $version);
    39. $arr[count($arr)-1] += 1;
    40. $narr = $arr;
    41. for($i = count($arr)-1; $i >= 0; $i--){
    42. if($narr[$i] >= $b){
    43. $narr[$i] = 0;
    44. $narr[$i-1] += 1;
    45. }
    46. }
    47. echo "<b>N&auml;chste Version: " . implode('.', $narr) . "</b>";
    48. ?>
    49. <br><br>
    50. <form method="POST">
    51. Version:<br><input type="text" name="version" value="<?php echo $version; ?>" placeholder="Version, z.B. 1.0.4.2"><br>
    52. <br>
    53. Z&auml;hlbasis:<br>
    54. <select name='b'>
    55. <?php
    56. $zb = array(10, 100);
    57. foreach($zb as $czb){
    58. echo "<option value='" . $czb . "'";
    59. if($b == $czb){
    60. echo " selected";
    61. }
    62. echo ">" . $czb . "</option>";
    63. }
    64. ?>
    65. </select><br>
    66. <br>
    67. <input type="submit" value="Testen">
    68. </form>
    69. </main>
    70. </body>
    71. </html>


    Bzw. rein auf den PHP-Teil beschränkt:

    PHP-Quellcode

    1. <?php
    2. $version = "1.0.9.9";
    3. $b = 10;
    4. $arr = explode('.', $version);
    5. $arr[count($arr)-1] += 1;
    6. $narr = $arr;
    7. for($i = count($arr)-1; $i >= 0; $i--){
    8. if($narr[$i] >= $b){
    9. $narr[$i] = 0;
    10. $narr[$i-1] += 1;
    11. }
    12. }
    13. echo "<b>N&auml;chste Version: " . implode('.', $narr) . "</b>";
    14. ?>


    Ggf. solltest du dir vorher sicher sein, in welchen Schritten du Versionen zählst. Hier im C&P-Beispiel hast du die Möglichkeit, beide Varianten zu testen.


    Link :thumbup:
    Hello World