sizeof

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP Developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Technical Asset Specialist Substations

TenneT is growing fast to realize its strategic ambitions. We play a leading role in driving the energy transition. We are looking for a passionate Technical Asset Specialist for substations (onshore and offshore) at our location in Arnhem who will contribute to this and that might be you? Your contribution to TenneT We are searching for a motivated and engaged colleague as a technical asset specialist (onshore and offshore) for instrument transformers and surge arresters, with preferably a strong background in the area of insulation coordination. As a specialist for insulation coordination you are responsible for overarching topics regarding insultation

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Junior .NET developer

Functie Jij hebt natuurlijk net jouw Bachelor op zak en gaat nu voor het eerst aan de slag bij een werkgever als junior .NET ontwikkelaar. Waarschijnlijk lijkt het jou spannend om ineens aan de slag te gaan bij klanten in de consultancy. Maak je niet druk, jij komt hier terecht in een warm bad en wordt totaal niet in het diepe gegooid. Zodra jij hier begint wordt jij gekoppeld aan een persoonlijke manager met een persoonlijk ontwikkelplan. Jij krijgt een scala aan trainingen, denk aan trainingen ten behoeve van het opdoen van zelf kennis en gedragscompetenties, maar ook trainingen voor

Bekijk vacature »

Applicatie Ontwikkelaar

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wie zoeken we? Jij bent een enthousiaste, flexibele OPS’er die het leuk vindt om het bestaande examenlandschap te vernieuwen. Je bent leergierig en hebt interesse in cloud- en containertechnieken zoals OpenShift, Docker en Helm. Je gaat een uitdaging niet uit de weg en wil je nieuw opgedane kennis graag delen met de collega’s binnen en buiten het team. Doordat de

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn ze op zoek naar een Technische front end developer. Momenteel hun front end back end team gescheiden aan het werk. Hier willen ze verandering in krijgen. Omdat ook veel interne applicaties ontwikkeld worden zoeken ze iemand die hen kan helpen om de interne applicaties te voorzien van de juiste Vue.js componenten. Zodoende willen ze de interactie tussen front end en back end versoepelen en de volgende stap binnen het platform gaan zetten. Deze componenten die jij ontwikkeld zullen in elk project gebruikt worden. Het back end team bestaat momenteel uit 8 ontwikkelaars

Bekijk vacature »

PHP Developer

Functie omschrijving Als PHP / Laravel developer zal je in een klein team terecht komen. Wij zijn op zoek naar een echte specialist, iemand die de balans weet te vinden tussen techniek en perfectie. In de aankomende jaren wilt dit bedrijf flink groeien en daarom zijn ze op zoek naar jou! Wat ga je doen? Je draagt bij aan het ontwikkelen en onderhouden van bestaande webapplicaties die boordevol functionaliteit zitten. Deze applicaties worden gebruikt door de organisatie zelf en ook door de klanten. Inmiddels wordt er gewerkt met Laravel 8 en zijn er diverse koppelingen naar externe leveranciers. Verder zal

Bekijk vacature »

Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Opleveren van mooie eindproducten, middels de Agile methodiek; Samenwerken in een team van 10 collega's; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De

Bekijk vacature »

Senior .NET Developer I goed salaris en deels thui

Bedrijfsomschrijving Mijn opdrachtgever is al ruim 20 jaar een gevestigde naam in de wereld van software ontwikkeling, met drie kantoren in de Randstad, waaronder Alphen aan den Rijn. Zij richten zich op het bouwen van IT-oplossingen die ervoor zorgen dat de productiviteit van klanten te allen tijden optimaal is. Hiervoor neemt jouw nieuwe werkgever het volledige ontwikkelproces tot haar rekening; van het eerste gesprek om de klantwensen in kaart te brengen, tot aan het uiteindelijke onderhoud van de opgeleverde oplossing. In totaal werken er inmiddels bijna 200 gemotiveerde IT-ers binnen deze organisatie. De gemiddelde leeftijd ligt rond de 35. Het

Bekijk vacature »

Outsystems Developer Medior

Dit ga je doen Bouwen aan nieuwe en innovatieve applicaties; Maken van koppelingen tussen Outsystems en het bestaande applicatielandschap; Troubleshooting op bestaande software. Hier ga je werken De organisatie is internationale speler binnen de bouwbranche en richt zich op de infrastructuur, zowel boven als onder de grond. Ze zijn ruim 1100 man groot en maken op IT vlak een mooie groei door. Als ervaren Developer kom je te werken op een IT-afdeling van zo'n 25 man groot. Een aantal jaar geleden hebben ze de keuze gemaakt om zich meer te gaan richten op ontwikkeling en door de groei van de

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer .NET, C# voor een gaaf bedrijf in de omgeving van Utrecht! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Lees dan snel verder! Voor een opdrachtgever in de omgeving van Utrecht, zijn wij op zoek naar een Junior Software Developer. Werk jij graag aan verschillende projecten en ga je graag klanten op bezoek? Dan is dit de ideale functie voor jou! Binnen deze functie

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »
Jan Bakker

Jan Bakker

22/10/2020 10:14:21
Quote Anchor link
Hallo allemaal, ik zit met de volgende vraag:
Deze regel geeft een waarschuwing in mijn code. (Warning = sizeof(): Parameter must be an array or an object that implements Countable in)
Quote:
for($i=0; $i<sizeof($gpx_files); $i++) {
HTML_gpx::viewBatchImportTableRow($i+1, $gpx_files[$i]);


Enig zoekwerk doet mij vermoeden dat er "is_array" voor moet komen, maar hoe precies snap ik niet.

Jan
 
PHP hulp

PHP hulp

08/11/2024 16:53:29
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 10:19:18
Quote Anchor link
Een controle of het een array is, is wel gewenst. Maar waar komt die variabele $gpx_files vandaan?

Het is dus geen array/object.
 
Jan Bakker

Jan Bakker

22/10/2020 10:54:57
Quote Anchor link
Een paar regels erboven vermoed ik.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//  batchimport GPX  bestand //
function batchimportGPX() {
    global $DEBUG, $cfg;
    HTML::heading(_MENU_GPX_BATCH_IMPORT, 3);
    if(!$cfg['public_host'] || check_password($cfg['admin_password'])) {
        echo "<script src='./libraries/import.js'></script>\n";
        // set current upload dir and scan it for gpx files
        $dir = GPX_UPLOAD_DIR;
        $gpx_files = scan_dir_f($dir, 0, 'FILETYPE_FILE', 'GPX');
        
        HTML::message_r(_TRC_BATCH_IMPORTING_DIR, $dir);
        HTML::message(_TRC_CHOOSE_FILES_FOR_BATCH_IMPORTING);
        if($DEBUG)    print_r($gpx_files);
        
        HTML_gpx::viewBatchImportTableHeader();
        for($i=0; $i<sizeof($gpx_files); $i++) {
            HTML_gpx::viewBatchImportTableRow($i+1, $gpx_files[$i]);
        }
        HTML_gpx::viewBatchImportTableFooter($dir);
        HTML_gpx::viewImportProgress();
    }else {
        HTML::message(_NOT_AUTH ." ". _DO_LOGIN);
    }
}
Gewijzigd op 22/10/2020 16:12:28 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 11:08:40
Quote Anchor link
Kan je de debug een aanzetten?

NB: Voor scripts hebben we code-tags.
Gewijzigd op 22/10/2020 11:09:33 door - Ariën -
 
Jan Bakker

Jan Bakker

22/10/2020 11:18:48
Quote Anchor link
Sorry maar er is geen "code tag" hoor, heb daar al meer naar gezocht hier omdat het mij zeer verbaasde dat die er niet was.
Debug staat aan (volgens mij toch) en geeft deze melding:
Quote:
Warning: sizeof(): Parameter must be an array or an object that implements Countable in /home/u57968p54877/domains/jan-karina.es/public_html/wandelingen/phpmygpx/gpx.php on line 451


Bedankt trouwens vooor je snelle reacties.
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 11:24:48
Quote Anchor link
Die tag is er wel. Zie ook de Veelgestelde Vragen. :-)

Als de debug aanstaat moet je een array-boom zien.
Gewijzigd op 22/10/2020 11:25:16 door - Ariën -
 

22/10/2020 11:50:16
Quote Anchor link
sizeof() is een alias voor de functie count() en moet een variabele krijgen waar iets achter zit dat de Countable interface heeft geïmplementeerd. Arrays hebben dat standaard, maar het mag ook een object van eigen class zijn.

PHP klaagt dat $gpx_files niet te tellen is via de Countable interface, het is blijkbaar geen array en verwijst ook niet naar iets anders dat de Countable interface wel heeft. Je zult moeten achterhalen wat er dan wel in $gpx_files zit, bijvoorbeeld met var_dump():

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php var_dump($gpx_files); ?>

Je moet daarna achterhalen hoe het komt dat $gpx_files niet voldoet aan het criterium van sizeof(), en besluiten hoe je dat op wilt lossen in de code die voorafgaat aan de for-lus.
Gewijzigd op 22/10/2020 11:51:49 door
 
Jan Bakker

Jan Bakker

22/10/2020 12:41:12
Quote Anchor link
Bedankt voor je antwoord maar daar moet ik eens heel lang op stureren hoor :-)
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 12:42:47
Quote Anchor link
De vraag is: als het geen array of object is, wat is het wel?
 
Jan Bakker

Jan Bakker

22/10/2020 12:47:41
Quote Anchor link
Quote:
Die tag is er wel. Zie ook de Veelgestelde Vragen. :-)

Het zou wel gemakkelijker zijn als je gewoon in de editorbalk staat ;-)

Toevoeging op 22/10/2020 12:54:50:

- Ariën - op 22/10/2020 12:42:47:
De vraag is: als het geen array of object is, wat is het wel?


Mijn inziens is het de inhoud van een formulier, verder zou ik het echt niet weten.
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 13:01:25
Quote Anchor link
Daarom moet je die var_dump() toevoegen.
Als je [code] en [/code]-tags toevoegt heb je ook lijnnummer erbij.

En ja, de knop ontbreekt. Er komt wel een keer een moment dat die wordt toegevoegd bij onderhoud aan de site.
Gewijzigd op 22/10/2020 13:01:56 door - Ariën -
 
Jan Bakker

Jan Bakker

22/10/2020 13:20:40
Quote Anchor link
Ik ga het eens bekijken op mijn gemak, bedankt in ieder geval.
 
Ivo P

Ivo P

22/10/2020 14:23:50
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$gpx_files = scan_dir_f($dir, 0, 'FILETYPE_FILE', 'GPX');


scan_dir() is een standaard php-functie. Zo te zien heb jij een eigen variant hierop gemaakt scan_dir_f()

En die geeft iets anders terug dan een array, wat scan_dir() wel doet.
Wat geeft jouw functie wel terug? En is dat onder alle omstandigheden zo?

Bijvoorbeeld: als er geen files gevonden worden: wordt dan een leeg array teruggegeven? of komt er NULL of FALSE terug?
 
Jan Bakker

Jan Bakker

22/10/2020 16:09:38
Quote Anchor link
Voor de duidelijkheid ik heb helemaal niets gemaakt omdat ik niet kan programmeren, (toch niet in php)
Ik zoek alleen hulp omdat het gevonden oude script een aantal fouten gaf, de meeste heb ik zelf gevonden maar dit is de laatste waar ik geen oplossing voor vindt.
Alleen al antwoord geven op jullie vragen is al erg moeilijk voor mij ;-)
Gelukkig werkt het hele programma wel, dus haast is er niet bij.
 
- Ariën  -
Beheerder

- Ariën -

22/10/2020 16:15:06
Quote Anchor link
Voor het gemak heb ik een [code] tag geplaatst waarbij je dus regelnummering ziet.
Maar je moet even zoeken in je codebase naar de function: scan_dir_f
 
Jan Bakker

Jan Bakker

22/10/2020 16:55:33
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
// self-made function like 'scandir()' from PHP5
function scan_dir($dir, $sorting_order, $type) {
    $filelist = scan_dir_f($dir, $sorting_order, $type, 0);
    return $filelist;
}

// self-made extended scandir function with filetype filter
function scan_dir_f($dir, $sorting_order, $type, $filter) {
    // definitions of constants for 'type'
    $FILETYPE_ALL = 0;
    $FILETYPE_DIR = 1;
    $FILETYPE_FILE = 2;

    if(!is_int($type)) $type = $$type;
    clearstatcache();
    $dirhandle  = opendir($dir);
    while (false !== ($file = readdir($dirhandle))) {
        if($file != "." && $file != "..") {
               switch($type) {
                   case 0:
                    $files[] = $file;
                    break;
                   case 1:
                    if(is_dir($dir.$file)) $files[] = $file;
                    break;
                   case 2:
                    if(is_file($dir.$file)) {
                        $ext = substr($file, strrpos($file, '.')+1);
                        if(!$filter || strtolower($ext) == strtolower($filter))
                            $files[] = $file;
                    }
                    break;
            }
           }
    }
    closedir($dirhandle);
    if(isset($files)) {    # prevents php warning
        if($sorting_order == 1) rsort($files);
        else                    sort($files);
    }
    return $files;
}
 
Ozzie PHP

Ozzie PHP

22/10/2020 17:15:04
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
// self-made extended scandir function with filetype filter
function scan_dir_f($dir, $sorting_order, $type, $filter) {
    $files = [];                                            <= deze regel toevoegen
    // definitions of constants for 'type'
    $FILETYPE_ALL = 0;

?>
Gewijzigd op 22/10/2020 17:15:43 door Ozzie PHP
 
Jan Bakker

Jan Bakker

22/10/2020 17:25:05
Quote Anchor link
Ontzettend bedankt Ozzie, dat was inderdaad de oplossing.
 
Ozzie PHP

Ozzie PHP

22/10/2020 17:28:23
Quote Anchor link
Geen dank hoor. Succes met je project.
 
Thomas van den Heuvel

Thomas van den Heuvel

22/10/2020 18:01:06
Quote Anchor link
Fijn dat het is opgelost het ongewenste gedrag lijkt te zijn verdwenen, maar het is natuurlijk ook interessant om te achterhalen waarom deze melding (ineens?) de kop opsteekt.

Komt het misschien omdat er lege directories ergens binnen geslopen zijn?
Of wellicht heeft jouw webboer de PHP-versie gebumpt en/of de strictheid waarmee fouten worden gemeld opgevoerd?

Hoe dan ook, indien deze meldingen eerder niet optraden, en nu wel, houdt dat in dat er *iets* is veranderd, of dat er op een bepaalde manier andere condities gelden voor de omgeving waarin deze functionaliteit actief is.

Code (en haar werking) verandert/muteert doorgaans niet spontaan; het doet altijd precies datgene wat geschreven is.

NB sizeof() is een alias, gebruik bij voorkeur geen aliassen, want die kunnen op den duur obsolete raken/helemaal worden verwijderd.
Gewijzigd op 22/10/2020 18:02:13 door Thomas van den Heuvel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.