[PHP] Only variables should be passed by reference*

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Pruttelpot
  • Registratie: Oktober 2002
  • Laatst online: 20-06-2022
Beste Dames en Heren van het goede leven,

Het zal ongetwijfeld aan het ontbreken van mijn PHP skills liggen, maarem, waarom ik kom er niet uit..

code:
1
2
3
4
5
6
7
8
9
<?php
$dir    = '/tmp';
$files1 = scandir($dir);

$files2 = array_splice(array_diff($files1, array('.', '..')),0);
$countfiles = count($files2);

print_r($countfiles);
?>


Ik verwacht als output de hoeveelheid bestanden in /tmp; maar het antwoord is

> PHP Notice: Only variables should be passed by reference in /tmp/test.php on line 5

Iemand een quick tip?

Thanks!
Pruttel

[ Voor 5% gewijzigd door Pruttelpot op 02-09-2018 09:42 ]

Alle reacties


Acties:
  • +3 Henk 'm!

  • Cyphax
  • Registratie: November 2000
  • Laatst online: 10:37

Cyphax

Moderator LNX
Ik denk dat je het resultaat van array_diff in een variabele moet zetten, en die variabele mee moet geven aan array_splice.

Saved by the buoyancy of citrus


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
^ Dat dus. Gewoon letterlijk wat er in de foutmelding staat.

Maarem, waarom heeft had dit topic geen fatsoenlijke titel? ;)

Verder zou ik graag zien dat je de volgende keer laat zien wat je zélf al gezocht, gevonden en geprobeerd hebt. We zijn geen afhaalchinees namelijk ;)

[ Voor 38% gewijzigd door RobIII op 02-09-2018 10:58 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • MAX3400
  • Registratie: Mei 2003
  • Laatst online: 27-09 22:07

MAX3400

XBL: OctagonQontrol

Ondanks dat de error vrij duidelijk is, heeft jouw PHP-interpreter wel permissies op /tmp om daar te lezen of andere handelingen te doen? Niet dat dit zometeen de volgende foutmelding gaat worden.

Mijn advertenties!!! | Mijn antwoorden zijn vaak niet snowflake-proof


Acties:
  • +1 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
MAX3400 schreef op zondag 2 september 2018 @ 10:58:
Ondanks dat de error vrij duidelijk is, heeft jouw PHP-interpreter wel permissies op /tmp om daar te lezen of andere handelingen te doen? Niet dat dit zometeen de volgende foutmelding gaat worden.
Misschien wordt de volgende melding wel een out of memory! ;) Laten we niet op zaken vooruitlopen ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
Wat wil je eigenlijk bereiken met die array_splice?

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Daos schreef op zondag 2 september 2018 @ 13:29:
Wat wil je eigenlijk bereiken met die array_splice?
. en .. eruit filteren.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
Dat doet hij toch al met de array_diff?

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ja, dat zie ik nu ook. Snap 't ook effe niet, maar 't ziet er ook nogal uit als een copy/past ergens van 't web...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Ideetje om het wat makkelijker te maken voor jezelf; gebruik een iterator:

PHP:
1
2
$fi = new FilesystemIterator('/tmp', FilesystemIterator::SKIP_DOTS);
$countfiles =  = iterator_count($fi);

Acties:
  • 0 Henk 'm!

  • Pruttelpot
  • Registratie: Oktober 2002
  • Laatst online: 20-06-2022
Thanks!

Ik ben er inmiddels uit. Was inderdaad makkelijker dan verwacht :)

Acties:
  • 0 Henk 'm!

  • MAX3400
  • Registratie: Mei 2003
  • Laatst online: 27-09 22:07

MAX3400

XBL: OctagonQontrol

Pruttelpot schreef op maandag 3 september 2018 @ 15:10:
Thanks!

Ik ben er inmiddels uit. Was inderdaad makkelijker dan verwacht :)
En? Welke oplossing/code heeft geholpen? Dat anderen er ook nog iets van kunnen leren ;)

Mijn advertenties!!! | Mijn antwoorden zijn vaak niet snowflake-proof


Acties:
  • 0 Henk 'm!

  • fo0
  • Registratie: Juli 2018
  • Laatst online: 12-01-2023

fo0

MAX3400 schreef op maandag 3 september 2018 @ 15:12:
[...]

En? Welke oplossing/code heeft geholpen? Dat anderen er ook nog iets van kunnen leren ;)
Het is hier geen afhaalchinees Google het maar :+

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
fo0 schreef op maandag 3 september 2018 @ 15:58:
[...]

Het is hier geen afhaalchinees Google het maar :+
Het is hier ook geen Fok! of huiskamer dus dit mag je voortaan in dergelijke topics achterwege laten :)

[ Voor 10% gewijzigd door RobIII op 03-09-2018 16:21 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1