getField i.p.v. getName

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Azure developer / Big Data @ Amersfoort

2021-06-08 iSense Azure developer / Big Data Ben jij een Azure Developer en wil jij je inzetten bij een internationale organisatie die zich met de meest innovatieve technologieën bezighoudt om mensen met elkaar te verbinden? Wil jij mee ontwikkelen op top niveau aan features die gebruikers en/of machines in staat stelt om stromen en processen te beïnvloeden? Lees snel verder! ISHU49233 Organisatie Als Azure Developer ga je in een team van experts aan de nieuwste digitale technologieën werken om klanten over de hele wereld te ondersteunen met het ontwerpen van slimme processen voor havens, steden, luchthavens en gebouwen! Door middel

Bekijk vacature »

ETL Developer

For the FRAAI Mainbank project, we are looking for a senior ETL developer that can discuss and develop the best technical solution with the team, but also is capable to discuss what should and should not be done from forward looking (business) perspective. The ETL team is already rather large and still growing at the moment the ETL team consists of around 24 developers and they are divided in 3 closely cooperating teams. We are looking colleagues with great communication skills within the IT team, but also capable of acting as an experienced developer towards other developers. An ability and

Bekijk vacature »

Junior Front-End Developer

Je maakt een vliegende start van je carrière, door meteen mee te bouwen aan de digitale aspecten van Coolblue. De eerst volgende selectiedag staat gepland op 29 juli! Wat doe je als Junior Front-End Developer bij Coolblue? Als Junior Front-End Developer ben je meteen vanaf de start onderdeel van een development team. Je kijkt veel mee met collega’s en volgt trainingen om te groeien als Junior Developer. Op dat moment komt je wil om steeds te blijven leren naar boven. Daarnaast pak je in de sprints ook je eigen stories op om Coolblue iedere dag een beetje beter te maken.

Bekijk vacature »

Front End Developer with excellent Angular skills

Front End Developer with excellent Angular skills to help migrate software application into the Cloud (Front End Developer Angular 65K Rotterdam IND Registered) For an international organisation, specialised in data management for the process industry, we are looking for a Front End Developer with strong work experience in Angular technologies. This organisation has developt a software solution that takes on the important role of connecting people, data and assets, and translates this data into 3D models. Until recently it was a desktop solution, that is currently being migrated to the (AWS) Cloud. Are you up for the task? Who are

Bekijk vacature »

BI Developer @ Utrecht

2021-07-27 iSense BI Developer Hou je van datagedreven organisaties? Ben je op zoek naar een uitdaging waarbij de nieuwste BI-tools en -technieken worden gebruikt? Wil je verantwoordelijkheid nemen in verschillende digitaal transformatieprojecten? ISPA50581 Organisatie Je gaat werken bij een wereldwijde financiële organisatie met een hoofdkantoor in Nederland. Je maakt deel uit van een van de belangrijkste teams binnen de organisatie voor het creëren van bruikbare inzichten uit data. De organisatie hecht veel belang aan de samenwerkings- en communicatiecultuur tussen verschillende ontwikkelingsteams. Je gaat werken in een team dat samenwerkt om verschillende bedrijfsdomeinen te helpen door dataproducten te maken. Deze omgeving

Bekijk vacature »

Unieke PHP Laravel functie!

Bedrijfsomschrijving Dit bedrijf is een hele grote en bekende speler in Nederland wat betreft duurzaamheid. Het is een mooie organisatie die een grote groei heeft doorgemaakt in de afgelopen jaren. Ze hebben een geavanceerde online portal die intensief in gebruik is door de eindklanten. Recent is besloten dit helemaal zelf door te gaan ontwikkelen en alle nieuwe PHP ontwikkelingen met een eigen team van ontwikkelaars te gaan doen. Hierdoor ontstaat er een unieke kans voor jou als ervaren PHP ontwikkelaar! Je kunt namelijk instromen in dit nieuwe team en samen met je nieuwe collega's de toekomstige PHP applicaties voor dit

Bekijk vacature »

Team Lead Applicatie Developers

UPS zoekt een Team Lead Applicatie Developers *THUISWERKEN IS MOGELIJK VOOR DEZE FUNCTIE Heb jij ruime ervaring als applicatieontwikkelaar? En vind je het leuk om boven op de laatste ontwikkelingen in je vak te zitten, mede-developers aan te sturen en altijd te blijven leren? Als Team Lead C# bij UPS werk je aan projecten die in veel verschillende landen worden gebruikt en maak je deel uit van een grote en internationale gemeenschap van agile teams. Dit ga je doen Je gaat aan de slag met het leveren van functionaliteiten voor zeer complexe IT-systemen. Je werkt samen met verschillende agile teams

Bekijk vacature »

Ervaren Front End Developer JavaScript / ReactJS

Over het bedrijf: Wij helpen zorg professionals door software te leveren. Ben jij een expert in Javascript? Heb je ervaring als front end developer? Vaste baan: Ervaren Front End Developer JavaScript ReactJS 3.000 - 4.500 Senior Front End Developer Ons bedrijf draagt met onze software bij aan de verdere verbetering van de revalidatiezorg in Nederland. Wij werken voor grote klanten. We doen omvangrijke projecten die we bij ons op kantoor realiseren (geen detachering). Wij werken met state-of-the-art technologie en lopen daarin voorop. Wil jij de diepte in en veel leren, dan is deze baan geknipt voor jou. Jouw werkzaamheden als

Bekijk vacature »

Full Stack Developer JavaScript HBO / GIT

Over de werkgever: Wij creëren ultramoderne digitale producten. Ben jij een Full Stack Developer? Heb je ervaring met programmeren? Vaste baan: Full Stack Developer Programmeren HBO 3.300 - 4.500 Full Stack Developer Wij zijn een Fullservice Internetbureau. Wij maken Websites, Apps en Portals, en zijn actief op gebied van E-commerce. We hebben ook veel aandacht voor websiteoptimalisatie (SEA en SEO), en systeemintegratie, en maken datakoppelingen met veel verschillende systemen. Bij ons werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Wij staan open voor

Bekijk vacature »

Tech Lead Application Developers

REMOTE WORK POSSIBLE FOR THIS ROLE* For our Europe development center in Eindhoven we’re looking for an Application Tech Lead that is able to work on enterprise type applications deployed across the world. As a tech lead at UPS you work on enabling the delivery of functionality for highly complex IT Systems. More than 500,000 UPSers move goods, capital and information across the world and deliver over 22 million items to their destinations every day. And our IT Systems make sure this can be done as efficient as possible. What You’ll Do You collaborate with internal customers as well as

Bekijk vacature »

PHP Backend Webdeveloper Lead HBO / Wordpress

Voor wie je gaat werken: Wij zijn een creatief digitaal bureau. Ben jij een Backend Developer? Heb jij ervaring met Laravel? Vaste baan: Backend Developer Webdeveloper HBO Laravel 3.000 - 4.500 Backend Developer Als internetbureau maken wij websites en softwareapplicaties op maat. Ook complexere projecten gaan we niet uit de weg. Wij werken voor MKB klanten. We hebben veel verschillende projecten. Houd jij van afwisseling? Dan zit je bij ons goed! We hebben een bijzondere, open cultuur, waarin er veel ruimte is om het enthousiasme voor wat we doen te delen. Wat wordt er van jou verwacht?: Voor de vacature

Bekijk vacature »

GIS Developer @ Utrecht

2021-05-17 iSense GIS Developer Ben jij een Software Developer met minimaal drie jaar ervaring en wil jij aan werken aan toonaangevende GIS software? Spreekt het jou aan om binnen een innovatief ingenieursbureau te werken aan uiteenlopende projecten voor diverse grote en bekende namen in Nederland? Lees dan nu verder! ISHU48803 Organisatie Als GIS Developer kom je te werken bij een high-tech ingenieursbureau in de regio van Utrecht. Al ruim 15 jaar werken ze aan de eigen ontwikkeling van innovatieve applicaties op het gebied van mobiliteit en infrastructuur. Met al hun jaren ervaring bedenken en ontwikkelen ze geografische oplossingen voor grote

Bekijk vacature »

Front-End Developer / JavaScript / Vue.JS / Financ

2021-05-24 iSense Front-End Developer / JavaScript / Vue.JS / Financial organization ISDI47550 Company profile Our client is a large organisation in the banking sector, offering various products and services across Europe. The department you will work for consists of multiple Scrum teams based in Amsterdam, but also have team members working for their vendor partner at an off-shore location in India. The department responsible for three different large applications that are being used internally by other teams. The current architecture does not suffice with the present-day standards and will therefore (need to) be renewed. To do so, the team will

Bekijk vacature »

Medior PHP Programmeur Backend Developer / REST Of

Over het bedrijf: Affiniteit met PHP? Affiniteit met online identificatie? Kennis van OCR Software? Developer Heb je ervaring met PHP, MYSQL, MVC en OOP? Vaste baan: Medior PHP Programmeur Backend Developer Codeigniter 3.000 - 4.300 Wij hebben ruim tien jaar ervaring op het gebied van online verifiëren van persoons- en bedrijfsgegevens in zowel Nederland als het buitenland. Vanuit ruime ervaring en up-to-date expertise adviseren wij klanten en partners onder andere over de diverse mogelijkheden voor het identificeren van personen en/of organisaties. De technische specialisten denken graag met je mee over de mogelijkheden voor de meest optimale oplossing. Er leeft een

Bekijk vacature »

Experienced Python Developer - Banking

We are looking for Python Developers with experience in Risk Model Management Your day-to-day activities As an experienced Python developer, you will be responsible for designing and developing robust and maintainable systems for our clients so that it can calculate credit risk. You will work in multidisciplinary teams collaborating on run and change processes of risk modeling and management applications. Together you will help design and build a robust, secure cloud environment in Azure. You are comfortable with solving the problems posed by the cloud, such as security, resilience and scaling and help solve the problems posed by the cloud,

Bekijk vacature »
The Ultimate

The Ultimate

16/01/2011 23:10:57
Quote Anchor link
Dag mensen,

Ben bezig met het opzetten van een OOP website. Uiteraard heb ik meerdere database tabellen met gegevens. Nu kan ik voor elke column in een bepaalde table het volgende doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
    public function getZipcode()
    {

        if(!$result = $this->_db->query("SELECT zipcode FROM debtors WHERE id = '".$this->_id."'")) {
            throw new PDOException('Er is een fout opgetreden.');
        }
else {
            foreach ($result as $row) {
                return $row['zipcode'];
            }
        }
    }
//->getZipcode()
?>

Maar is het niet veel handiger om dit te doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
    public function getField($field)
    {

        if(!$result = $this->_db->query("SELECT $field FROM debtors WHERE id = '".$this->_id."'")) {
            throw new PDOException('Er is een fout opgetreden.');
        }
else {
            foreach ($result as $row) {
                return $row[$field];
            }
        }
    }
//->getField()
?>


Graag jullie gedachten hierover...
Gewijzigd op 16/01/2011 23:12:04 door The Ultimate
 
PHP hulp

PHP hulp

28/07/2021 13:16:11
 
Jens V

Jens V

16/01/2011 23:20:46
Quote Anchor link
Als je met klassen werkt, is het dan niet de bedoeling dat je bij het opbouwen van de pagina je object inlaadt, en pas je db opnieuw contacteert als je iets verandert?
 
Bas Cost Budde

Bas Cost Budde

16/01/2011 23:39:51
Quote Anchor link
Zelfs zonder klassen is dat nog de bedoeling; iets veranderen kan toch pas met een nieuw request.

Maar Ultimate, beste kerel, middenin een foreach een return, dat loopt niet he.

Ik ben het met de essentie van je vraag eens. Als je voor elk veld een zelfde getter nodig hebt, kan dat best met de veldnaam als een parameter.

Let op 'zelfde'. Ik heb best objecten die sommige tabelvelden helemaal niet afgeven, of er stiekem eerst een bewerking op loslaten. Dan kun je __call gebruiken. Laten we afspreken dat je "veld" altijd opvraagt door $object->getVeld() te doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
public function __call($name, $args) {
  if (substr($name, 0, 3) == 'get') {
    $prop = substr($name, 3);
    if (isset($this->$prop)) return $this->prop;
    trigger_error(__CLASS__ .' heeft geen '.$prop);
  }
}
 
The Ultimate

The Ultimate

17/01/2011 08:38:26
Quote Anchor link
Jens V op 16/01/2011 23:20:46:
Als je met klassen werkt, is het dan niet de bedoeling dat je bij het opbouwen van de pagina je object inlaadt, en pas je db opnieuw contacteert als je iets verandert?
Bas Cost Budde op 16/01/2011 23:39:51:
Zelfs zonder klassen is dat nog de bedoeling; iets veranderen kan toch pas met een nieuw request.
Ik denk dat Jens bedoelt te zeggen dat je bij het instantieren van een object meteen alle mogelijke waardes uit de database in het object plaatst zodat je er de hele pagina bij kunt en dus niet telkens opnieuw een sql-query hoeft uit te voeren. Ik weet niet of dat de bedoeling is (lijkt me eigenlijk wel sneller) en hoe ik dat dan vorm moet geven. Tips zijn welkom.

Bas Cost Budde op 16/01/2011 23:39:51:
Maar Ultimate, beste kerel, middenin een foreach een return, dat loopt niet he.
Ja, je hebt ook helemaal gelijk. Die return hoort daar niet. Stom van me. Soms dan zit je zo vast in je gedachte. Het gaat in dit geval niet fout omdat het telkens om 1 waarde gaat maar dat maakt het inderdaad nog niet goed. Bedankt dat je me daarop hebt gewezen. Zal het aanpassen.

EDIT:
Ik dacht "dat pas ik wel even aan". Niet dus. Hoe kan ik onderstaande foreachloop nou het beste vervangen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    public function getId()
    {

        if(!$result = $this->_db->query("SELECT id FROM debtors WHERE id = '".$this->_id."'")) {
            throw new PDOException('Er is een fout opgetreden.');
        }
else {
            foreach ($result as $row) {
                return $row['id'];
            }

        }
    }
//->getId()
?>


Bas Cost Budde op 16/01/2011 23:39:51:
Let op 'zelfde'. Ik heb best objecten die sommige tabelvelden helemaal niet afgeven, of er stiekem eerst een bewerking op loslaten. Dan kun je __call gebruiken. Laten we afspreken dat je "veld" altijd opvraagt door $object->getVeld() te doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
public function __call($name, $args) {
  if (substr($name, 0, 3) == 'get') {
    $prop = substr($name, 3);
    if (isset($this->$prop)) return $this->prop;
    trigger_error(__CLASS__ .' heeft geen '.$prop);
  }
}
?>
Ok, ik zie wat je me probeert te zeggen. Kan ik deze call gewoon in mijn object-class plaatsen samen met mijn algemene fieldgetter en dan een veld opvragen d.m.v. $obj->getField()? En wat is het nut dan precies van deze __call()?
Gewijzigd op 17/01/2011 10:35:35 door The Ultimate
 
Bas Cost Budde

Bas Cost Budde

17/01/2011 23:22:45
Quote Anchor link
* foreach: sja, wat wil je? Je query lijkt door de WHERE 1 record op te halen, klopt dat?

__call is een magische methode. Zoek maar op, is leuk. Hij gaat af wanneer je een methode op een object aanroept die je niet gedefinieerd hebt (of die niet bereikbaar is, dwz niet publiek, of indien uit een subklasse aangeroepen, private).

Je vraagt een veld 'huisnummer' op met $obj->getHuisnummer, zonder dat je die methode hoeft te schrijven. Hm, doe in dat geval ook nog even strtolower() bij de toekenning aan $prop; ik heb zelfs een methode die camelcase omzet in underscored, als volgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
    private function flatcamel($name) {
    // om het helemaal mooi te maken, camelcaps weer omzetten naar underscores. Oeps: als de eerste letter een hoofd- is, niet underscoren
        return strtolower(preg_replace('/(?!^)[A-Z]/', '_\0', substr($name, 3)));
    }
 
Pim -

Pim -

18/01/2011 00:11:44
Quote Anchor link
In plaats van die foreach kan je $result->fetchAssoc() oid gebruiken.
 
Rudie dirkx

rudie dirkx

18/01/2011 00:23:23
Quote Anchor link
Quote:
Maar Ultimate, beste kerel, middenin een foreach een return, dat loopt niet he.


Waarom is een return binnen een foreach slecht? Als je een onbekend aantal elementen hebt - laten we zeggen dat het er heeel veel zijn - en de eerste van de elementen die iets speciaals heeft, is de uitkomst van je function... Wat is er dan perfecter dan een return in een foreach?

flatcamel wordt trouwens ook wel een slug genoemd. Of sluggen of slugifyen of zoiets.
Gewijzigd op 18/01/2011 00:23:56 door rudie dirkx
 
Bas Cost Budde

Bas Cost Budde

18/01/2011 21:44:34
Quote Anchor link
Rudie, mijn opmerking had een nauwere scope dan jouw wedervraag. Ultimate probeert iets dat hij op die manier niet goed uitdrukt.
Dan nog heb ik liever geen return in een foreach. Als je heel veel elementen ophaalt en er dan toch maar een behandelt, deugt je algoritme niet voor de taak onderhanden. (En je laat wel heel veel werk liggen voor de garbage collector, en als C-student had je een vette onvoldoende van me gekregen op een tentamen. Maar dat helemaal terzijde :) )


slug, wat is dat ook alweer? Ik kwam het tegen in een CMS, als een string die direct in de url gezet mag worden, in tegenstelling tot de productnaam die spaties en dergelijke ellende kan bevatten.
 



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.