Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.php > #4440

Re: var_dump(8.7 <= 8.7) / false?

Path csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From Stefan Mayer <meniskus@gmx.net>
Newsgroups de.comp.lang.php
Subject Re: var_dump(8.7 <= 8.7) / false?
Date Thu, 15 Nov 2018 21:24:44 +0100
Lines 90
Message-ID <1652878720.20181115212444@gmx.net> (permalink)
References <61959674.20181115012304@gmx.net> <g54o42FdnvgU1@mid.individual.net> <g54o8cFdnvgU2@mid.individual.net> <06371490.20181115143113@gmx.net> <psjtkk$rud$1@solani.org> <4310540394.20181115155258@gmx.net> <psk79f$36s$1@solani.org>
Mime-Version 1.0
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding quoted-printable
X-Trace individual.net FTbb8ixjG3mjvJxorfqBDA3JBWUhH1CVhR0dVmhvQDEIO88p/C
Cancel-Lock sha1:S7q5mBgN4U1mSPd6/1u6+VUr75w=
In-Reply-To <psk79f$36s$1@solani.org>
X-Newsreader MyGate/2.6.0.171 (http://barin.com.ua/soft/mygate/)
Xref csiph.com de.comp.lang.php:4440

Show key headers only | View raw


Christoph M. Becker am Donnerstag, 15. November 2018 (17:36):

> Am 15.11.2018 um 15:52 schrieb Stefan Mayer:

>> Christoph M. Becker am Donnerstag, 15. November 2018 (14:51):
>> 
>>> kommt aber natürlich darauf an, was du später mit diesen Werten tun willst.
>> 
>> Aus den Werten werden Daten für "select" Elemente im Frontend erzeugt. Der
>> Anspruch ist, alle Werte des Bereichs zu erstellen. Es geht nicht hauptsächlich
>> um die Zahlen selbst.

> Okay, dann wäre BCMath schon mal gar nicht verkehrt.

>> Neuer Versuch:
>> 
>> Die Funktion hat einen weiteren Schalter "zero". Der Wert "0" soll bei "false"
>> auslassen werden. Nun birgt ja ein Vergleich wie "0 ==(=) $value" genau das
>> gleiche Problem wieder.
>> 
>> Sehe ich das richtig, das Vergleiche $a>$b oder $a<$b zulässig sind?

> Nein, die haben das gleiche Problem.

>> Wenn ja, wäre es dann eine Lösung die Stellen, welche auf Gleichheit prüfen, in
>> Zeichenketten zu wandeln?
>> 
>> "(string)0.00" $value wird zu "0"
>> "(string)2.50"  $max"  wird zu "2.5"
>> 
>> Da kommt ja was sicheres zum Vergleichen raus, oder?

> Probier mal

>   (string) 9 < (string) 10


Neuer Versuch mit bccomp. Wieder funktioniert es scheinbar.

```
function buildRange($min, $max, $step, $zero = true)
{
    $values = [];
    $value = $min;

    /**
     * https://secure.php.net/manual/de/function.bccomp.php
     *  0 wenn beide Operatoren gleich sind
     *  1 wenn left_operand größer ist als right_operand,
     *  -1 sonst
     */
    while (1 !== bccomp((string)$value, (string)$max, 2)) {
        if (false === $zero && 0 === bccomp((string)$value, '0',2)) {
            $value += $step;
            continue;
        }
        $values[] = $value;
        $value+=$step;
    }
    return $values;
}
print_r(buildRange(8.3, 8.7, .4));
print_r(buildRange(7.9, 8.7, .4));
print_r(buildRange(-1.25, 2.75, .5, false));
print_r(buildRange(-1, 1, .5, false));
print_r(buildRange(-1, 1, .5, true));
```

OK? Einwände? Probleme?

Danke und tschüss, Stefan











Back to de.comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 01:23 +0100
  Re: var_dump(8.7 <= 8.7) / false? Arno Welzel <usenet@arnowelzel.de> - 2018-11-15 09:12 +0100
    Re: var_dump(8.7 <= 8.7) / false? Arno Welzel <usenet@arnowelzel.de> - 2018-11-15 09:15 +0100
      Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 14:31 +0100
        Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 14:51 +0100
          Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 15:52 +0100
            Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 17:36 +0100
              Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 18:02 +0100
              Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 21:24 +0100
                Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-16 14:43 +0100
                Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-16 21:26 +0100
                Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-17 23:49 +0100
                Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-19 21:15 +0100
        Re: var_dump(8.7 <= 8.7) / false? Claus Reibenstein <4spamersonly@kabelmail.de> - 2018-11-15 19:34 +0100
          Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 21:06 +0100
  Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 09:13 +0100
    Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 12:22 +0100
  Re: var_dump(8.7 <= 8.7) / false? "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2018-11-17 20:55 +0100
    Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-19 20:52 +0100

csiph-web