Hoi,
Hoe edit je een title? Want 3 x ! is ook weer iets te veel van het goede. Goed: Het volgende.
Er draait in this case een pfsense instance met een script die me mogelijk maakt om van de netwerken die er zijn een in en out kbps rate te geven doormiddel van json zodat ik die kan gebruiken waar nodig.
Ik heb een class gemaakt die me mogelijk maakt json te ‘parsen’ zodat ik met een getter op een (‘url/based’) manier de value kan pakken van wat is gegeven.
Voorbeeld:
Als ik dan een
uitvoer krijg ik alles wat ik verwacht:
Door de getter in de json class is het mogelijk om zo dingen te pakken:
Dit geeft dan 'x.x.x.x';
Als ik het hele wan gebeuren wil hebben doe ik :
Dit geeft dan:
Oke dit werkt allemaal. Het volgende.
Ik wil nu de outKbps hebben:
Dan word er niets gegeven, het is 0…. De outKbps kan 0 zijn, en die 0 is nodig voor de grafieken.
De bedoeling is dat
Het is 0.
En daar gebeurt iets wat ik niet begrijp.
De result geeft 0, de value van de get is 0 en die 0 wil ik weergeven. Het is pvd 0....
Maar omdat het 0 is krijg je niets, geen errors, heulemaal niets!!!
frustrating!
Hoe krijg ik het voor elkaar dat als de value = 0, het toch als 0 weergeven word?
Nogmaals ik krijg 0 als ik het echo, Ik snap er niets meer van. Hier een video voor de visueel ingestelde mensen: *snip* ja, nee, doei, zo werkt 't hier niet. Je kunt gewoon relevante code plaatsen in dit topic.
Ik weet dat het tijd is om te stoppen maar kan iemand me hier mee helpen?
Hoe edit je een title? Want 3 x ! is ook weer iets te veel van het goede. Goed: Het volgende.
Er draait in this case een pfsense instance met een script die me mogelijk maakt om van de netwerken die er zijn een in en out kbps rate te geven doormiddel van json zodat ik die kan gebruiken waar nodig.
Ik heb een class gemaakt die me mogelijk maakt json te ‘parsen’ zodat ik met een getter op een (‘url/based’) manier de value kan pakken van wat is gegeven.
Voorbeeld:
code:
1
| $json = Json::load( 'https://pfsense.home/homekit_bott.php?key=SuperSecretPfsenseKey&rates=1' , false ); |
Als ik dan een
code:
1
| $json->get() |
uitvoer krijg ik alles wat ik verwacht:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| <?php = stdClass::__set_state(array( 'lan' => stdClass::__set_state(array( 'inKbps' => 0, 'outKbps' => 4.057213389252503, 'interface' => 'hn1', )), 'opt6' => stdClass::__set_state(array( 'inKbps' => 0, 'outKbps' => 0, 'interface' => 'ovpns2', 'friendlyiface' => 'opt6', 'name' => 'GUEST_ACCESS_BLABLA', 'monitorip' => '10.10.10.0, 'sourceip' => '10.0.0.1', 'delay' => '0.047ms', 'loss' => '0.0%', )), 'wan' => stdClass::__set_state(array( 'inKbps' => 0, 'outKbps' => 0, 'interface' => 'hn0', 'friendlyiface' => 'wan', 'name' => 'HN0_WAN_DHCP', 'status' => 'okay', 'monitorip' => 'x.x.x.x', 'sourceip' => 'x.x.x.x', 'delay' => '1.622ms', 'loss' => '0.0%', )), 'opt5' => stdClass::__set_state(array( 'inKbps' => 0, 'outKbps' => 0, 'interface' => 'ovpns1', 'friendlyiface' => 'opt5', 'name' => 'PRIVATE_ACCESS_VPNV4', 'status' => 'okay', 'monitorip' => '12.12.12.12', 'sourceip' => '12.12.12.1', 'delay' => '0.047ms', 'loss' => '0.0%', )), )); ?> |
Door de getter in de json class is het mogelijk om zo dingen te pakken:
code:
1
| $json->get(‘wan/monitorip’); |
Dit geeft dan 'x.x.x.x';
Als ik het hele wan gebeuren wil hebben doe ik :
code:
1
| $json->get(‘wan’); |
Dit geeft dan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| <?php = stdClass::__set_state(array( 'inKbps' => 0, 'outKbps' => 0, 'interface' => 'hn0', 'friendlyiface' => 'wan', 'name' => 'HN0_WAN_DHCP', 'status' => 'okay', 'monitorip' => 'x.x.x.x', 'sourceip' => 'x.x.x.x', 'delay' => '1.631ms', 'loss' => '0.0%', )); ?> |
Oke dit werkt allemaal. Het volgende.
Ik wil nu de outKbps hebben:
code:
1
| $json->get(‘wan/outKbps’); |
Dan word er niets gegeven, het is 0…. De outKbps kan 0 zijn, en die 0 is nodig voor de grafieken.
De bedoeling is dat
code:
0 geeft, en dat doet het ook. 1
| $json->get(‘wan/outKbps’); |
Het is 0.
En daar gebeurt iets wat ik niet begrijp.
De result geeft 0, de value van de get is 0 en die 0 wil ik weergeven. Het is pvd 0....
Maar omdat het 0 is krijg je niets, geen errors, heulemaal niets!!!
frustrating!
Hoe krijg ik het voor elkaar dat als de value = 0, het toch als 0 weergeven word?
Nogmaals ik krijg 0 als ik het echo, Ik snap er niets meer van. Hier een video voor de visueel ingestelde mensen: *snip* ja, nee, doei, zo werkt 't hier niet. Je kunt gewoon relevante code plaatsen in dit topic.
Ik weet dat het tijd is om te stoppen maar kan iemand me hier mee helpen?
[ Voor 4% gewijzigd door RobIII op 22-04-2020 00:55 ]