Array uitlezen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Modern, innovatief en Informeel bedrijf waar veel mogelijk is Werken met diverse robot merken Meehelpen met inbedrijfstellingen bij de klant De organisatie Hier ga je aan de slag Dit groeiende bedrijf van totaaloplossingen in de automatisering van productieprocessen, is hoofdzakelijk actief in de Benelux. Vanuit het kantoor in regio Amersfoort worden veel oplossingen geboden in de vorm van robotica. Geen project is hetzelfde wat garant staat voor bijzonder veel afwisseling. De bedrijfsgrootte is ongeveer 80 man. Van gerobotiseerde machinebeladingen tot aan assemblage automatiseringen wordt vanuit krachtige engineering maatwerk equipment geleverd.

Bekijk vacature »

Front-end Developer

Onze klant is sinds 2 jaar actief als adviseur en bemiddelaar in de verzekeringsmarkt. Sindsdien proberen zij deze slapende markt flink wakker te schudden. Dit willen zij doen door het bouwen van slimme vergelijkers op hun eigen website en die van partners. Het bedrijf wil continu voorop lopen, zodat consumenten eenvoudig de verzekeringen kunnen vinden die het beste bij ze past. Functieomschrijving Als Front-end Developer werk je aan vergelijkingsmodules die consumenten dagelijks gebruiken bij het vergelijken en afsluiten van verzekeringen. Je vindt het leuk om samen te werken met de product owner, bestaande modules te verbeteren en nieuwe vergelijkers "from

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Front-end Angular developer

Functie In jouw rol als Front-End developer werk je samen met de backend developers om middels tweewekelijkse sprints het platform naar een hoger niveau te tillen. Hiernaast heb je affiniteit met data en werk je graag samen met het team om de gegevensintegriteit en -beveiliging te waarborgen, om ervoor te zorgen dat de gebruiker wereldwijd de beste SaaS-services heeft. Deze organisatie heeft meer dan 100 mensen in dienst, waarvan er 45 in Nederland werken. Het ontwikkelteam bestaat uit 10 mensen en is verdeeld in 2 scrumteams. Het eerste team bestaat uit Java en Scala ontwikkelaars. Het tweede team, waar jij

Bekijk vacature »

Senior Java Ontwikkelaar

Dit ga je doen Werken aan uiteenlopende interne projecten voor grote (internationale) organisaties; Ontwikkelen van diverse (web)applicaties en platformen met technieken als Java, Azure en ASP.NET; Complexe vraagstukken tackelen met jouw expertise en ervaring; Waar nodig help jij je collega's om samen tot de juiste oplossing te komen. Hier ga je werken Als Java Developer kom je te werken bij een internationale organisatie in regio Amsterdam die zich richt op procesoptimalisatie door middel van zeer complexe IT oplossingen. Dit doen zij op het allerhoogste niveau met vestigingen over heel de wereld en met een groot aantal aansprekende, maatschappelijk betrokken klanten.

Bekijk vacature »

App Developer

Samen werken aan een gezonder Nederland en toekomstbestendige zorg voor iedereen. Dat is de impact die jij kan hebben als App Developer bij VGZ. Wil jij een bijdrage leveren aan een maatschappij waarin iedereen zich thuis voelt? Bekijk dan de vacature. Uit onderzoek van Computable is VGZ verkozen tot ‘beste niet-ICT werkgever voor ICT’ers van Nederland’ Hoe ook jij het verschil maakt Als App developer werk jij aan het belangrijkste communicatiekanaal van VGZ, namelijk de App! Als App developer bij VGZ maak je onderdeel uit van een van onze App-teams. Met een goede mix van kennis en ervaring zet je

Bekijk vacature »

Integratie Developer / Architect

Dit ga je doen Als Integratie Developer / Architect binnen deze organisatie krijg je echt de kans om impact te maken. De organisatie is groeiende maar houdt een corporate cultuur buiten de deur. Heb je een goede business case: zorg voor goede argumentatie en ga ervoor! Geen stroperig beslissingsproces dat jouw ideeën in de weg staat! Enkele van jouw taken: Je ontwerpt en ontwikkelt nieuwe integraties met behulp van interne tools (Boomi) of externe partners; Je vertaalt functionele specificaties naar technische oplossingen; Je denkt mee over strategische ontwikkelingen op het gebied van applicatie integratie; Je voert regie op leveranciers en

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving Voor de gemeente Amsterdam zijn wij op zoek naar een softwareontwikkelaar Cleopatra. De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van brom- en snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie. Functie

Bekijk vacature »

Ervaren Full-Stack PHP Developer

Functieomschrijving Gezocht! Ervaren PHP Developer! Voor een organisatie in de regio Harderwijk zoeken wij een ervaren PHP Developer die het IT team van dit bedrijf gaat versterken. We zijn op zoek naar een enthousiaste en breed georiënteerde IT-er die het innovatieve bedrijf nog een stap verder kan brengen. Voor deze functie zoeken wij iemand die communicatief goed is en die zelfstandig problemen op kan lossen. Je werkt samen met een externe ontwikkelpartij en kunt hun dus uitdagen op het geleverde werk. Het schrijven van concepten aan de AI en hardware kant valt onder je verantwoordelijkheden. Het bedrijf noemt zichzelf een

Bekijk vacature »

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

Junior PHP ontwikkelaar

Functie Wij hebben onlangs onze eerste collega’s aangenomen, waardoor ons development team momenteel uit 4 personen bestaat. We bouwen onze software op basis van een PHP-framework (wat op zichzelf een Symfony framework is). Qua ontwikkeling focussen wij ons op 3 focus velden; – API-ontwikkeling/ Component Creatie – Implementatie – Framework ontwikkeling; het toevoegen van nieuwe functionaliteit of interne microservices Onze senior software engineer focust zich momenteel op de laatste twee punten, maar wij komen handen te kort op het eerste veld. Daarom zijn wij op zoek naar een enthousiaste junior software engineer die graag de kneepjes van het vak wil

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar een ontwikkelaar ter versterking van het huidige developers team. Heb jij altijd al willen werken voor een bedrijf, dat veilige netwerkverbindingen levert, door middel van veilige oplossingen, die door middel van de nieuwste technologieën ontwikkelt zijn? Stop dan nu met zoeken! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten

Bekijk vacature »

Front-end Developer

Functie omschrijving Wij zijn op zoek naar een Front-end Developer! Als Front-end Developer binnen dit softwarebedrijf ga je de frontends voor zowel je eigen interne projecten als die voor klanten opzetten, onderhouden en uitbreiden. Je zet ideeën om naar mooie successen voor de klanten. Dat is in een notendop wat je gaat doen! Wat kun je verwachten? Je werkt aan de doorontwikkeling van bestaande maatwerkapplicaties. Bijvoorbeeld wanneer de klant de applicatie wil uitbreiden met een nieuwe feature; Samen met het team van backenders en desginers zet je nieuwe ideeën van klanten om naar mooie oplossingen; Je werkt met verschillende frameworks.

Bekijk vacature »
Jasper DS

Jasper DS

21/02/2013 20:37:21
Quote Anchor link
Hoi,

voor mijn querybuilder ben ik een functie aan het schrijven voor de where-clause. Mijn functie moet zorgen voor een array met parameters en een string met de where-clause. De input moet op deze manier binnenkomen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
array('veld1' => 'value1', 'veld2' => 'value2');

De code die ik gebruik is de volgende:
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
public function setWhere()
{
    $values = array('id' => 1, 'name' => 'test'); // input
    if(count($values) > 0)
    {
        $where = 'WHERE ';
        foreach($values as $key => $value)
        {
            $where .= $key . ' = :' . $key . ' AND ';
            $values[':' . $key] = $value;
            unset($values[$key]);
        }
        $where = substr($where, 0, -5);
        echo $where; // WHERE id = :id AND name = :name
    }    
}


Nu vind ik die code eigenlijk vrij omslachtig dus ik vroeg me af of die niet beter kon? Hoe zouden jullie zoiets aanpakken?

Alvast bedankt,
Jasper
 
PHP hulp

PHP hulp

19/04/2024 10:16:17
 
Ozzie PHP

Ozzie PHP

21/02/2013 20:42:51
Quote Anchor link
Dit soort trucs zijn ook vaak omslachtig.

Waarom doe je dit:

$values[':' . $key] = $value;
unset($values[$key]);

Ik ben ook wel eens zo bezig geweest om functies te maken om een query te bouwen. Ik weet echter niet of ik het nu weer zo ga doen, aangezien het zeer omslachtig is allemaal. Je kunt een query op zoveel manieren opbouwen dat het eigenlijk niet te doen is om dat allemaal in functies te verpakken.
 
- Mark -

- Mark -

21/02/2013 20:45:08
Quote Anchor link
Waarom staat $values binnen de functie trouwens? En normaal return je een waarde, echo hoort niet echt thuis in een functie.

En wat als het OR of iets anders moet zijn in plaats van AND?
 
Jasper DS

Jasper DS

21/02/2013 20:55:18
Quote Anchor link
Quote:
$values[':' . $key] = $value;
unset($values[$key]);


zodat $values kan gebruikt worden als PDO parameter bij de execute. De keys komen dan overeen met de prepared statements. De oude keys zijn niet meer nodig dus die doe ik weg.

@mark, het gaat over de functionaliteit. In de praktijk zal de functie idd returnen en komt $values binnen. Dit is een voorbeeld.

Voor OR of end kan er vrij makkelijk een parameter worden toegevoegd denk ik.

Nog even uitleggen waarom ik het niet op de doctrine manier wil doen. Ik wil dat er via mijn builder alleen data binnen komt dus niet zoals doctrine "id = :id AND name = :name" want dat is SQL.
Gewijzigd op 21/02/2013 20:56:35 door Jasper DS
 
Jan Koehoorn

Jan Koehoorn

21/02/2013 21:21:59
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
function set_where ( $columns ) {
    $wheres = array ( );
    foreach ( $columns as $column ) {
        $wheres[ ] = $column . ':=' . $column;
    }

    return 'WHERE ' . implode ( ' AND ', $wheres );
}

?>
Gewijzigd op 21/02/2013 21:47:30 door Jan Koehoorn
 
Ozzie PHP

Ozzie PHP

21/02/2013 21:22:26
Quote Anchor link
NOgmaals Jasper, goed nadenken of je dit allemaal wel wil. Ik was er ook ooit heel enthousiast over... totdat ik tot de ontdekking kwam dat queries gruwelijk lang en gecompliceerd kunnen worden. Dat krijg je nooit allemaal in functies gestopt.
 
Jasper DS

Jasper DS

21/02/2013 22:14:27
Quote Anchor link
Ozzie, wat heb jij dan gedaan?
Jan, bedankt! Ziet er beter uit mits enige aanpassingen. Zo is het beter niet?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
if(count($columns) > 0)
        {
            $wheres = array();
            foreach ($columns as $key => $column )
            {
                $wheres[':' . $key] = $key . '= :' . $key;
            }
           echo 'WHERE ' . implode ( ' AND ', $wheres );

            var_dump($wheres);
        }
Gewijzigd op 21/02/2013 22:18:57 door Jasper DS
 
Erwin H

Erwin H

22/02/2013 08:39:18
Quote Anchor link
Is het niet veel makkelijker om op de plek waar je nu al die functies aan gaat roepen om de SELECT, FROM, WHERE, ORDER BY, GROUP BY, LIMIT etc clausules op te bouwen, gewoon een string met de query en (eventueel) een array met parameters door geeft. Veel flexibeler dan dat kan het niet.... En in je code uiteindelijk een stuk korter.
 
Jasper DS

Jasper DS

22/02/2013 09:59:38
Quote Anchor link
Neen want ik wil werken met een soort van ORM. In mijn model bouw ik een storage op. Deze bevat enkel data (fields, from, action, where, limit, orderby). De sotorage bouw ik zo op:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$storage = new Storage('SELECT', 'users'); // action en from zijn verplicht
$storage->setFields(array('id', 'name', 'email')); // niet verplicht -> standaard *
$storage->setWhere(array('id' => 1, 'name' => 'Jasper')); // field -> value


Die dataholder gaat dan naar de adapter, dat kan een PDOAdaptor zijn, txtAdaptor, MysqlAdaptor. In de PDO en in de MysqlAdaptor word sql gegenereerd met behulp van de data van de Storage classe. De sql in de Mysql en de PDO adaptor is niet hetzelfde want PDO werkt met prepared statements en Mysql niet.

M.a.w. ik wil een adaptor kunnen opbouwen met de functies uit de Storage(builder) de storage builder word opgebouwd in mijn model want ik wil geen SQL in mijn model zodat ik daar niet van afhankelijk ben.
Gewijzigd op 22/02/2013 10:01:14 door Jasper DS
 
Erwin H

Erwin H

22/02/2013 10:08:41
Quote Anchor link
Waarom zou je in godsnaam MySQL en (of) PDO gebruiken? Allebij werken ze met mysql databases. Normaal gesproken gebruik je een andere adapter omdat je een andere database gebruikt. Een andere adapter gebruiken om maar een andere adapter te kunnen gebruiken is een beetje nutteloos. Ook omdat je het nu al in een abstractie laag gaat verwerken.

Anyway, ik ga je verder niet proberen over te halen. Doe wat je moet doen, maar ik voorspel nu dat je binnen een half jaar er weer vanaf stapt omdat het vele malen complexer is dan je nu denkt, uitermate inflexibel is (ik geef je een maand voor je je eerste query vindt die je er met geen mogelijkheid in krijgt) en het kost je veel te veel werk voor iets dat veel sneller en simpeler kan.
 
Jasper DS

Jasper DS

22/02/2013 10:58:06
Quote Anchor link
Erwin H op 22/02/2013 10:08:41:
Waarom zou je in godsnaam MySQL en (of) PDO gebruiken? Allebij werken ze met mysql databases. Normaal gesproken gebruik je een andere adapter omdat je een andere database gebruikt. Een andere adapter gebruiken om maar een andere adapter te kunnen gebruiken is een beetje nutteloos. Ook omdat je het nu al in een abstractie laag gaat verwerken.


MysqlAdaptor en PDOAdaptor was idd een slecht voorbeeld in de praktijk maar het is wel nodig voor no-SQL databases. PDOAdaptor voor alle SQL database en andere Adaptors voor no-sql databases.

Dit wil ik bereiken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
public function findById($id)
    {
        $sb = new StorageBuilder('SELECT', 'gebruikers');
        $sb->setFields(array('id,', 'name'));
        $sb->setWhere(array('id' => $id));

        $result = $this->getStorage()->execute($sb);

        $this->populate($result);
    }
Gewijzigd op 22/02/2013 11:06:54 door Jasper DS
 



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.