|
|
|
|
Deshalb bei PHP (und jeder anderen Sprache nicht zwingend Typen besitzt, wie z.B. JavaScript) === verwenden, wenn man strikte Vergleiche will.
var_dump(8 == '08:00'); => true
var_dump(8 === '08:00'); => false
var_dump((bool) 8); => true
var_dump((bool) '08:00'); => true
Wenn's keine Typen gibt (die es übrigens mittlerweile auch bei PHP gibt), wie soll der Interpreter dann eine Zahl oder String sonst interpretieren?
Integer 0 ist logischerweise false. Also muss alles andere true sein.
Ein nicht-leerer String ist logischerweise auch true.
|
[Dieser Beitrag wurde 3 mal editiert; zum letzten Mal von derSenner am 11.09.2017 19:51]
|
|
|
|
|
|
Schon klar, ich verwende normalerweise auch den "===", und ich kenne auch diese schwachen vergleiche. Aber dass der interpreter so weit geht war mir neu. Ich meine da ist ein DOPPELPUNKT im string.
8 == '8' // versteh ich
8 == '08' // kein ding
8 == '08.0' // jop
8 == '08wasistdeinprpoblem' // nä!
|
|
|
|
|
|
|
| Zitat von TheRealHawk
PEBKAC
| |
PEBKAC oder PEBCAK?
|
|
|
|
|
|
|
Oh wait. Ich hab dein Problem falsch interpretiert .
var_dump(8 == '07:00'); => false
var_dump(8 == '08:00'); => true
var_dump(8 == '09:00'); => false
Das ist natürlich maximalstbehindert, da geb ich dir recht . Da haut PHP anscheinend wieder irgendwo ne magische Konvertierung drüber. Herrlich.
var_dump(8 == '08:00asd'); => true
var_dump(8 == '08:sdsadasdasdsaasd0'); => true
var_dump(8 == '08sdasdsadsadasdas'); => true
var_dump(8 == '07sdasdsadsadasdas'); => false
alter
|
[Dieser Beitrag wurde 4 mal editiert; zum letzten Mal von derSenner am 11.09.2017 20:01]
|
|
|
|
|
|
Ich hab's mir halt bisher immer so vorgestellt, dass PHP einen typecast "versucht": bei sowas wie '08' also völlig logisch die 8 heraus kommt. Aber wenn hinter der Zahl irgendein wirrer string folgt wäre meine Erwartung, dass es definitiv keine integer 8 wird
Dann werde ich in Zukunft bei solchen Vergleichen vorsichtiger sein (oft ist halt '==' bequemer, wenn man z.B. die Daten aus einer DB kriegt wo die Spalte nur integer liefern kann aber der SQL-Query/ORM liefert mir das ganze eben nur als string...)
Aber da bin ich ja beruhigt, dass auch erfahrene Leute überrascht sind
|
|
|
|
|
|
|
Am besten die neueste PHP Version verwenden und ausgiebig Typen wie bei brauchbareren Programmiersprachen benutzen, dann läuft man auch nie in solche Probleme.
Also statt
function($foo) {
...
}
besser
function(int $foo): bool {
...
}
verwenden.
Das geht mittlerweile mit PHP recht gut.
Weiters immer typecasting oder ähnliches einsetzen. Wenn die Variable eine natürliche Zahl sein soll, dann caste die Variable auch so (oder verwende die Funktion intval, wenn du was spezielleres brauchst).
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von derSenner am 11.09.2017 20:10]
|
|
|
|
|
|
Meine dürftigen Access Kenntnisse sind am Ende. Ich habe eine Abfrage, die über ODBC auf einen Server zugreift und von dem Daten in eine neue Tabelle schreibt.
Dann habe ich ein Modul, welches die Abfrage ausführt und die neue Tabelle als xlsx exportiert.
Das funktioniert alles. Jetzt würde ich gerne eine Schleife basteln, die das ganze wie bisher ausführt, aber in jedem Durchlauf ein Kriterium in der WHERE Klausel der Abfrage ändert.
Geht das überhaupt ohne weiteres und wie geht man das an? Ich habe echt keine Idee und stöbere gerade hilflos durch ADO Tutorials ohne eine Lösung zu finden.
/erledigt
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von elkawe am 13.09.2017 16:18]
|
|
|
|
|
|
| Zitat von elkawe Ich habe echt keine Idee und stöbere gerade hilflos durch ADO Tutorials ohne eine Lösung zu finden.
| |
"Niemand wird dir helfen, wenn du nicht mehr gebraucht wirst und deshalb bist du ganz alleine dafür verantwortlich, dich möglichst gut dagegen zu wappnen."
Also, dann mal los marsch marsch, was sitzt du hier noch so blöd rum und wartest auf fremde Hilfe?
|
|
|
|
|
|
|
Firefox hat geupdated, es gab anscheinend einen Crash. Jetzt sind zwar alle LEsezeichnen noch da, aber alle Add-Ons, suchmaschinen und Einsellungen sind weg. Wo kann ich die suchen?
|
|
|
|
|
|
|
Im AppData deines tagesaktuellen Backups.
|
|
|
|
|
|
|
Was zum...grad bei Battlefield der Rechner gecrasht, nach dem Neustart steht die Systemzeit auf einmal in 2009 und Firefox verweigert das Aufrufen der meisten Seiten wegen nicht passender Sicherheitszertifikate.
Habe dann die Systemzeit manuell geändert nachdem auch ein Wiederherstellungspunkt nichts gebracht hatte, jetzt denkt FF ich hätte das ganze seit 09 zum ersten Mal wieder gestartet, aber alles scheint zu funktionieren.
Muss ich mir Sorgen machen?
|
|
|
|
|
|
|
Bios Batterie leer? Wobei das keinen Absturz bedeuten sollte.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von derSenner am 13.09.2017 20:34]
|
|
|
|
|
|
Keine Ahnung, denke eher nicht. Den Crash hat der Grakatreiber verursacht.
Aber verstellte Systemzeit und sowas hatte ich noch nie, immer mal wieder was neues.
|
|
|
|
|
|
|
| Zitat von ghostbear
Muss ich mir Sorgen machen?
| |
Ne, ist halt dumm gelaufen. https-Zertifiktate sind nur für einen gewissen Zeitraum gültig, und 2009 gehört halt nicht dazu. Dass es dann Fehlermeldungen hagelt heißt nur, dass das auch funktioniert.
|
|
|
|
|
|
|
| Zitat von ghostbear
Was zum...grad bei Battlefield der Rechner gecrasht, nach dem Neustart steht die Systemzeit auf einmal in 2009 und Firefox verweigert das Aufrufen der meisten Seiten wegen nicht passender Sicherheitszertifikate.
Habe dann die Systemzeit manuell geändert nachdem auch ein Wiederherstellungspunkt nichts gebracht hatte, jetzt denkt FF ich hätte das ganze seit 09 zum ersten Mal wieder gestartet, aber alles scheint zu funktionieren.
Muss ich mir Sorgen machen?
| |
Starte mal neu (sry ), bei nem richtigen Crash oder absichtlichen Memory Wipe fallen bei mir die Haelfte der Treiber aus und die Systemzeit steht auf der Betriebseinstellung. Nach nem weiteren Neustart laeuft dann alles wieder wie vorher.
|
|
|
|
|
|
|
Hast du das mit dem Neustart danach überlesen?
|
|
|
|
|
|
|
Nein?
Einfach nix verstellen und direkt rebooten, ich weiss nicht was genau die Sync zerlegt aber mit Windows hat es eher nichts zu tun - den gleichen Fehler kriegt man naemlich auch, wenn man die Systemplatte nicht mal mountet/entschluesselt... Keine ahnung wie der betroffene Cache heisst, aber wenns das gleiche Problem ist muss man das System nur nochmal normal - ohne Systemwiederherstellung oder andere komische Startoptionen - booten lassen. Ich kann mich natuerlich auch irren.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von indifferent am 14.09.2017 8:57]
|
|
|
|
|
|
|
|
|
|
Solange er den Rechner nicht vom Strom getrennt hat, sollte die Batterie doch egal sein, oder?
|
|
|
|
|
|
|
| Zitat von skinni
Solange er den Rechner nicht vom Strom getrennt hat, sollte die Batterie doch egal sein, oder?
| |
Umgekehrt sollte aber das Datum auch korrekt im BIOS sein und daraus gezogen werden, wenn die Batterie in Ordnung ist-
|
|
|
|
|
|
|
| Zitat von skinni
Solange er den Rechner nicht vom Strom getrennt hat, sollte die Batterie doch egal sein, oder?
| |
Ne, geht trotzdem kaputt.
|
|
|
|
|
|
|
gibt's ne Möglichkeit aus einer Java-Anwendung heraus ein Powershell Skript auszuführen?
Windoof meckert immer das es keine "gültige Win32 Anwendung" ist
der workaround ne cmd aufzurufen die das ps1 Skript ausführt ist bekannt, aber halt fugly ohne Ende
(Java 7, Win Server 2012 R2, PS3)
|
|
|
|
|
|
|
Kannst du die Powershell.exe mit Parameter aufrufen?
tschy2m
|
|
|
|
|
|
|
ich brauche eure hilfe:
ich habe hier eine to-do liste als calc tabelle, wo man in der letzten spalte per drop down menü "erledigt" oder "offen" auswählen kann. Eigentlich sollten die Aufgaben mit dem Status "erledigt" in ein anderes Tabelleblatt verschoben werden - so verstehe ich die datei zumindest - das passiert aber nicht. das andere Tabellenblatt bleibt leer.
Das nervt, weil so natürlich alle Aufgaben, ob erledigt oder nicht, durcheinander stehen.
meine kompetenzen reichen nicht, um ne entsprechende Formel einzubauen, es sei denn, ihr sagt mir wie die aussehen muss.
fast besser wäre eine alternative excel/calc Tabelle, die mir diese art der To-Do liste ermöglicht.
Danke für jede Hilfe!
|
|
|
|
|
|
|
| Zitat von Dagrachon
der workaround ne cmd aufzurufen die das ps1 Skript ausführt ist bekannt, aber halt fugly ohne Ende
(Java 7, Win Server 2012 R2, PS3)
| |
Aber direkt Powershell Scripts aufrufen ist schönes Software Development, oder was?
Wenn du schon sowas machst, dann kommts auf die cmd auch nicht mehr an.
|
|
|
|
|
|
|
Powershell-Skripte führt man doch über Powershell.exe (powershell -file <Dateiname>) aus. Geht das in Java nicht?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von GarlandGreene am 14.09.2017 15:42]
|
|
|
|
|
|
| Zitat von Swot
Aber da bin ich ja beruhigt, dass auch erfahrene Leute überrascht sind
| |
Programming in php is like a box of chocolate, you'll never know what (kind of unexpected, mostly undefined and completely mind-boggling behavior) you're gonna get
php ist halt echt auf der Grundlage aufgebaut dass es um jeden Preis der Welt versucht, irgendetwas zu tun wenn es irgendwie möglich ist, auch wenn es schon weit über den Punkt hinaus ist wo die meisten Programmiersprachen aufgeben und eine Exception werfen.
|
|
|
|
|
|
|
| Zitat von tschy2m
Kannst du die Powershell.exe mit Parameter aufrufen?
tschy2m
| |
jetzt ja..
| Zitat von derSenner
Aber direkt Powershell Scripts aufrufen ist schönes Software Development, oder was?
Wenn du schon sowas machst, dann kommts auf die cmd auch nicht mehr an.
| |
Quotendummbrabbelantwort [check]
| Zitat von GarlandGreene
Powershell-Skripte führt man doch über Powershell.exe (powershell -file <Dateiname> aus. Geht das in Java nicht?
| |
geht, allerdings benötigt die Powershell n paar mehr Parameter um aus ner JVM heraus angeworfen zu werden (und auch wieder sauber Rückmeldung zu geben )
und nein, ich hab mir die Kombination natürlich nicht freiwillig ausgesucht nur wenn's der Kunde wünscht...
|
|
|
|
|
|
|
|
|
|
|
Jetzt wo ich meine Gehaltserhöhung habe, kann ich mal wieder etwas Geld ausgeben .
Würde gern jetzt das erste Mal in ein Antivirenprogramm investieren - bisher immer nur mit kostenlosem AntiVir gelebt und mit NoScript gesurft - und auch eigentlich nie einen Virus gehabt (weder kam eine Meldung noch habe ich irgendwas von einem Virus gemerkt).
Macht es trotzdem sinn, in etwas "vernünftigeres" zu investieren?
Dachte an Kaspersky Internet Security, 40 Euro im Jahr finde ich jetzt nicht so schlimm.
Danke .
|
|
|
|
|
|
Thema: Informatiker helfen PC-Neulingen ( Du kannst mich mal am Arsch exceln ) |