PHP als Taschenrechner
Beispiele
Basiswissen
Die Programmiersprache PHP hat sehr umfangreiche Funktionen zur Mathematik. Die Funktionen und Rechnungen sind alle Teil des Kernpakets von PHP. Sie müssen nicht nachintsalliert werden sondern sind immer direkt mit php verfügbar.
Rechenergebnisse mit php anzeigen
Um eine Rechnung in PHP durchführen zu können, muss auf dem Rechner ein lokaler php-client installiert sein. PHP kann dann in einer Shell (z. B. Bash) interaktiv so benutzt werden, wie ein Taschenrechner. Um das Ergebnis einer Rechnung anzuzeigen, setzt man den Befehl echo voran:
- echo 2+3;
- echo 2-3;
- echo 2*3;
- echo 2/3;
Jede Zeile in PHP muss immer mit mit einem Semikolon abgeschlossen werden. Bei vielen Rechnungen muss keine Klammer um den Rechenausdruck gesetzt werden, bei anderen schon. Eine Klammer um den zu berechnenenden Term zu setzen ist niemals ein Fehler.
Legende
- . = Komma. Für PHP ist 1.2 die Zahl Eins-Komma-zwei Kommazeichen ↗
- # = Beginn von einem Kommentar PHP Kommentarzeile ↗
Grundrechenarten mit php
- (2+3) # gibt 5 aus Addition ↗
- (8-2) # gibt 6 aus Subtraktion ↗
- (3*2) # gibt 6 aus Multiplikation ↗
- (8/5) # gibt 1.6 aus Division ↗
- (8++) # gibt 9 aus Inkrement ↗
- (8--) # gibt 7 aus Dekrement ↗
Höhere Mathematik mit PHP
- abs(-4) # gibt 4, den Absolutwert ↗
- acos(0.707) # gibt etwa 0.7855 als Winkel im Bogenmaß, den Arkuscosinus ↗
- acosh(4) # gibt etwa 2.06 Areatangens hyperbolicus ↗
- asin(1) # gibt etwa 1.570 oder pi/2 im Bogenmaß, den Arkussinus ↗
- asinh(4) # gibt etwa 2.095Areasinus hyperbolicus ↗
- atan(4) # gibt etwa 1.326 als Winkel im Bogenmaß Arkustangens ↗
- atan2(1,1) # gibt etwa 0.785, den Winkel von (0|0) zum Punkt (1|1)
- atanh(0.9) # gibt etwa 1.472, den Areatangens hyperbolicus ↗
- base_convert(29,10,16) # gibt 1D, verwandelt hier Dezimalzahl in Hexadezimalzahl ↗
- bindec(1001) # gibt 9, verwandelt Binärzahl in Dezimalzahl ↗
- ceil(4.2) # gibt 5, aufrunden über die Ceiling-Funktion ↗
- cos(3.14) # gibt etwa -1 für Winkel im Bogenmaß Cosinustabelle im Bogenmaß ↗
- cosh(3.14) # gibt etwa 11.574 für Winkel im Bogenmaß Kosinus hyperbolicus ↗
- decbin(31) # gibt 11111, verwandelt Dezimalzahl in Binärzahl ↗
- dechex(31) # gibt 1F, verwandelt Dezimalzahl in Hexadezimalzahl ↗
- decoct(31) # gibt 37, verwandelt Dezimalzahl in Oktalzahl ↗
- deg2rad(45) # gibt etwa 0.785 Grad in Rad ↗
- exp(2) # gibt etwa 7.389, rechnet e hoch [hier hoch zwei] ↗
- expm1(2) # gibt etwa 6.389, wie exp(2), aber um eins vermindert ↗
- floor(4.8) # gibt 4, abrunden über die Floor-Funktion ↗
- fmod(8,5) # der Rest von 8 geteilt durch 5 Teilen mit Rest ↗
- getrandmax() # z. B. 2147483647, gibt den größtmöglichen Wert von RAND ↗
- hexdec("ae") # gibt 174, Hexadezimalzahl in Dezimalzahl ↗
- hypot(12,5) # gibt 13 Hypotenuse über Pythagoras ↗
- intdiv(8,5) # gibt 1 Ganzzahldivision ↗
- is_finite(log(0)) # gibt nichts zurück. is_finite(2) gäbe 1 zurück. Die 1 steht für endlich ↗
- is_infinite(log(0)) # gibt 1 zurück. is_infinite(2) gäbe nichts zurück. Die 1 steht für unendlich ↗
- is_nan(acos(0)) # gibt 1 zurück: acos von 0 ist keine Zahl ↗
- lcg_value() # gibt Zahl zwischen 0 und 1 als Zufallsgenerator ↗
- log(7.8) # gibt ungefähr 2.054 als ln ↗
- log1p(7.8) # gibt ungefähr 2.175, wie log(7.8+1)
- log10(100) # gibt 2 als lg ↗
- max(4,9,2) # gibt 9 als Maximum ↗
- min(4,9,2) # git 2 als Minimum ↗
- mt_rand() # erzeugt ganzzahlige Zufallszahl über Mersenne-Twister ↗
- mt_srand() # beginnt zufällig irgendwo im Mersenne-Twister ↗
- mt_getrandmax() # gibt die größtmögliche Zahl des Mersenne-Twister ↗
- octdec(12) # gibt 10 verwandelt Oktalzahl in eine Dezimalzahl ↗
- pi() # Gibt etwa 3.14 oder den Wert von pi ↗
- pow(2,3) # rechnet 2 hoch 3 und gibt 8 als Potenz ↗
- rad2deg(1) # gibt ungefähr 57 Rad in Grad ↗
- rand() # gibt z. B. 1767056969 Zufallsgenerator ↗
- round(2.9999) # gibt 3 Runden ↗
- sin(1) # gibt etwa 0.8418, für Winkel im Bogenmaß die Sinusfunktion ↗
- sinh(1) # gibt 1.1752 als Sinus hyperbolicus ↗
- sqrt(9) # gibt 3 als Quadratwurzel ↗
- srand() # zufälliger Beginn (seed) für Zufallsgenerator ↗
- tan(1) # gibt etwa 1.557 für Winkel im Bogenmaß die Tangensfunktion ↗
- tanh(1) # gibt etwa 0.7616 als Tangens hyperbolicus ↗
Fest hinterlegte Konstanten in PHP
- Constant # Value # Description
- INF # INF # The infinite
- M_E # 2.7182818284590452354 # die Eulersche Zahl ↗
- M_EULER # 0.57721566490153286061 # die Euler-Mascheroni-Konstante ↗
- M_LNPI # 1.14472988584940017414 # Natürlicher Logarithmus von Pi, der Kreiszahl ↗
- M_LN2 # 0.69314718055994530942 # Natürlicher Logarithmus der Zahl zwei ↗
- M_LN10 # 2.30258509299404568402 # Natürlicher Logarithmus der Zahl zehn ↗
- M_LOG2E # 1.4426950408889634074 # dualer Logarithmus von e ld [von e] ↗
- M_LOG10E # 0.43429448190325182765 # 10-er Logarithmus von e lg [von e] ↗
- M_PI # 3.14159265358979323846 # pi als Kreiszahl ↗
- M_PI_2 # 1.57079632679489661923 # die Hälfte von pi als Kreiszahl ↗
- M_PI_4 # 0.78539816339744830962 # ein Viertel von pi als Kreiszahl ↗
- M_1_PI # 0.31830988618379067154 # 1/pi, von pi der Kehrwert ↗
- M_2_PI # 0.63661977236758134308 # 2/pi, zwei geteilt durch die Kreiszahl ↗
- M_SQRTPI # 1.77245385090551602729 # von pi die Quadratwurzel ↗
- M_2_SQRTPI # 1.12837916709551257390 # 2 geteilt durch die Wurzel von pi ↗
- M_SQRT1_2 # 0.70710678118654752440 # von ½ oder 0,5 die Quadratwurzel ↗
- M_SQRT2 # 1.41421356237309504880 # Wurzel zwei [√2] ↗
- M_SQRT3 # 1.73205080756887729352 # Wurzel drei [√3] ↗
Sonstiges
- NAN # NAN # Not A Number
- PHP_ROUND_HALF_UP # 1 # Runde hälften auf
- PHP_ROUND_HALF_DOWN # 2 # Runde Hälften ab
- PHP_ROUND_HALF_EVEN # 3 # Runde Hälften zur ganzen geraden Zahl
- PHP_ROUND_HALF_ODD # 4 # Runde Hälften zur ungeraden ganzen Zahl
Persönliche Einschätzung
PHP bietet viele mathematische Funktionen der höheren Mathematik. Die Programmiersprache wird vor allem zur Erzeugung von Webseiten genutzt. Geht es rein um eine gelegentliche Nutzung als Taschenrechner sind die Schreibweisen zu ungewöhnlich, um PHP im Alltag auf einem Computer zu nutzen.