slacker_nl | zondag 19 april 2020 @ 20:49 | |||
Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru's en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot "hij doet het niet" of "hij geeft een fout" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt Zie ook: • PHP Dataverwerking • Officiële PHP website • PHP Documentatie • MySQL Reference Manual • Yet Another PHP Faq • PHP Cheat Sheet • PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc Tutorials: • W3Schools PHP • W3Schools SQL | ||||
FlippingCoin | zondag 19 april 2020 @ 20:54 | |||
Npm van php? | ||||
slacker_nl | zondag 19 april 2020 @ 22:11 | |||
Ok, om om de cloudfare protectie heen te komen, even m'n bericht gebase64-ed. Wil je het lezen: base64 -d en je bent golden.
| ||||
Farenji | zondag 19 april 2020 @ 22:29 | |||
Use statements werken niet zoals met perl, je moet een corresponderende mappenstructuur hebben. Maw je Baz.php class moet in de src/Foo/Bar folder staan, en je moet in je test dan ook "use Foo/Bar/Baz" hebben. Een use statement is in php niks meer dan definitie van een alias, het doet vanzichzelf helemaal niks, en laadt ook geen bestanden of folders in ofzo. | ||||
slacker_nl | zondag 19 april 2020 @ 22:45 | |||
Dit is wat ik begrepen heb: namespace Foo => src/Foo.php, in Foo.php kan je een class neerplempen, laten we zeggen class Foodle. Dan kan ik in een andere file, use Foo\Foodle; doen en dan kan ik $thing = new Foo\Foodle(); zeggen en dan moet het werken, right? | ||||
Farenji | zondag 19 april 2020 @ 23:06 | |||
Nope, de conventie is 1 class per file met dezelfde naam als de file. Dus src/Snarf/Gronk.php met daarin class Gronk en namespace Snarf. In andere files doe je dan "use Snarf/Gronk;" en dan "$gronk = new Gronk;", of zonder use stmt: "new \Snarf\Gronk;". Als je autoloading gebruikt (zoals met composer) moet je de psr-4 standaard volgen anders werkt het niet. https://www.php-fig.org/psr/psr-4/ | ||||
slacker_nl | zondag 19 april 2020 @ 23:17 | |||
Bij gebrek aan een smiley waar het hoofd ontploft. Die path voorbeelden onder aan de pagina zijn ook mind is blown verhaal. Ik denk dat ik het snap, dus als ik in de composer.json het volgende zeg:
Dan is de file src/Bar.php, met namespace Foo, eigenlijk 'Foo/Bar'? En in die file heb ik dan ook een class die Bar heet. Ja? Nee, maybe? | ||||
Farenji | zondag 19 april 2020 @ 23:36 | |||
Ja dat klopt. | ||||
slacker_nl | zondag 19 april 2020 @ 23:44 | |||
Ok, nu m'n test nog overtuigen dat het klopt wat ik denk. Want dat blijft het niet doen.... | ||||
slacker_nl | maandag 20 april 2020 @ 02:12 | |||
Ik heb het aan de praat, uiteindelijk zat er iets fouts in de composer.json, door 1 van mijn uitprobeersels nadat ik dacht dat ik het snaptte. Maar de psr-4 statement met //foo// is dus FOUT. Dat breekt shit op manieren waar je moeder van gaat schreeuwen. Ik heb het inmiddels in een cookiecutter template gegooid zodat ik deze boilerplate nooit meer kan vergeten. Bedankt voor de hulp. Ik ga nu even een beetje chillen, want ik ben klaar met dit. | ||||
Crutch | dinsdag 6 oktober 2020 @ 13:49 | |||
Bijna PHP8 | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 11:42 | |||
JIT-compilatie | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 11:44 | |||
Het valt me op dat ik en andere PHP'ers altijd spontaan jeuk krijgen van NPM. | ||||
FlippingCoin | zaterdag 10 oktober 2020 @ 11:50 | |||
Waarom? | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 11:51 | |||
Composer werkt gewoon veel prettiger. Is even geleden, maar i had er destijds ruzie mee. | ||||
FlippingCoin | zaterdag 10 oktober 2020 @ 12:00 | |||
Hm vind zowel npm als yarn fijner werken dan composer juist. Vind sowieso het PHP ecosysteem altijd zo ouderwets aanvoelen vergeleken bij dat van JS. Maar goed kan komen doordat ik recent weer met PHP moet werken. | ||||
Farenji | zaterdag 10 oktober 2020 @ 12:07 | |||
Terecht, wat een ellendige cluster fuck is dat zeg. Sowieso dat hele js ecosysteem is dikke ellende. Honderd miljoen miljard packages die vaak bestaan uit triviale oneliners omdat js nog steeds geen fatsoenlijke core libs heeft. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 12:17 | |||
Klopt, ik moet ook echt helemaal niks van dat JS hebben. Het is al bijzonder lastig om de autoloading functionerend te krijgen... Wat ze bij Google doen met V8 moeten ze lekker zelf weten, maar ik kijk lekker de andere kant op. Al moet ik zeggen dat NPM binnen .NET best redelijk werkt zolang je het niet verneukt. | ||||
FlippingCoin | zaterdag 10 oktober 2020 @ 12:20 | |||
Autoloading? | ||||
FlippingCoin | zaterdag 10 oktober 2020 @ 12:27 | |||
De hoeveelheid packages is wel een punt bij javascript ja. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 14:30 | |||
De taal op zich is prima, maar inderdaad, veel code in het ecosysteem moet vaak backwards-compatible zijn. Vandaar dat de libraries soms wat verouderd aanvoelen. Maar functioneel werkt het prima. Het is alleen heel zuur dat je een externe library moet gebruiken voor high-performance computing (async, nieuwe threads). [ Bericht 6% gewijzigd door #ANONIEM op 10-10-2020 14:31:56 ] | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 14:32 | |||
Een vriend van me wees er net op dat ik met wat toevoegingen zomaar een enterprise-grade applicatie in handen zou kunnen hebben. Maar wel GNU, ik ga denk ik voor de strengste open-source licentie ga die er is. Ik wil niet dat het in handen komt van bedrijven. Bedrijven zijn evil, en dat past niet bij Project 'Isaeus'. [ Bericht 13% gewijzigd door #ANONIEM op 10-10-2020 14:34:45 ] | ||||
FlippingCoin | zaterdag 10 oktober 2020 @ 14:54 | |||
Asynchroniteit is een beetje raar in javascript, het is een synchrone taal die taken door de environment uit kan laten voeren. Je hebt wel await en ze promises wat best fijn werkt, hiernaast zijn ze bezig met wat reactive elementen die nu in rxjs zitten in de taal te trekken. Het probleem is dat je ook oudere browsers wilt ondersteunen en daar heb je polyfils voor nodig. Ik weet niet per se of dat met andere talen anders zou zijn. Wat ik erg fijn vind aan javascript zijn de array functions o.a., dat doen niet veel talen beter en dit gebruik ik erg veel. Wel in Typescript dan, javascript gebruik ik al heel lang niet meer. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 14:55 | |||
Ik moest even opzoeken wat het is | ||||
Monolith | zaterdag 10 oktober 2020 @ 15:12 | |||
Ik neem toch aan dat je geen high performance computing in PHP probeert te doen. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 15:17 | |||
Jawel, ik ben de boel open aan het breken hier. | ||||
Monolith | zaterdag 10 oktober 2020 @ 15:19 | |||
Gebruik dan gelijk Rust. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 16:44 | |||
| ||||
Monolith | zaterdag 10 oktober 2020 @ 17:55 | |||
Das een beetje tldw; Samenvatting? | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 18:28 | |||
Hilarische video, zelf ook niet helemaal gezien hoor. Het begin is leuk. Kreeg het doorgestuurd van een vriend. | ||||
#ANONIEM | zaterdag 10 oktober 2020 @ 19:34 | |||
Ordinaire crosspost: DIG / [Open-Source] PHP/Laravel: wil je de wereld veranderen? Klik hier! (: Ik zoek PHP'ers. | ||||
xaban06 | woensdag 28 oktober 2020 @ 22:36 | |||
Ik ben voornamelijk een OPS engineer. Daarbij doe ik af en toe DEV. Dev is dus niet mijn sterkste kant. Ik heb een InfluxDB database waar in ik 1 keer per dag bij houd wat de waarde van een aandeel op dat moment is (value) + prijs waar ik het voor heb gekocht (gak). Dat ziet er zo uit:
In Grafana wil ik van ieder aandeel zien wat mijn rendement is (in procenten). Daarvoor gebruik ik de volgende query:
Opzich werkt dat gewoon goed. Nu wil ik een 2e query maken, waarin ik het gemiddelde rendement van alle aandelen bij elkaar per dag wil zien (in procenten). Helaas kom ik er met verschillende queries niet uit. Uiteraard kan ik mijn rendement al berekenen bij het invoeren van data in mijn database, zodat ik het in de query niet meer hoef te berekenen. Maar dat doe ik liever niet. Als het met een query on-the-fly kan doe ik het liever op die manier. Iemand? | ||||
Monolith | woensdag 28 oktober 2020 @ 22:42 | |||
Ik ken influx db zelf niet, maar zo te zien hebben ze daar mean als aggregate functie voor het gemiddelde: https://influxdbcom.readt(...)aggregate_functions/ | ||||
xaban06 | woensdag 28 oktober 2020 @ 22:45 | |||
Dat is een aggregate function en aggregate en non-aggregate mag je niet mixen in een query. Dan nog, zou ik de correcte query niet weten.
| ||||
Monolith | woensdag 28 oktober 2020 @ 22:50 | |||
Welke non-aggregate zou je dan gebruiken? Ik zou gokken op zoiets: SELECT MEAN((value / gak) * 100) - 100) From stocks group by time (1d) | ||||
xaban06 | woensdag 28 oktober 2020 @ 22:51 | |||
| ||||
Monolith | woensdag 28 oktober 2020 @ 22:58 | |||
Ah ja, Daar was ik al bang voor. Zo uit mijn hoofd levert dit hetzelfde resultaat: SELECT (MEAN(value) / MEAN(gak) * 100) - 100 From stocks | ||||
xaban06 | woensdag 28 oktober 2020 @ 23:01 | |||
Thanks so far! /edit Lijkt te werken. Thanks! [ Bericht 1% gewijzigd door xaban06 op 28-10-2020 23:13:43 ] |