Class werkt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Product Developer (M/F), Fulltime 40 h/week

A global Plantbased revolution – that is our dream. Maximising the protein transition – that is our mission. Producing and developing sustainable and delicious products – that is what we do. Ojah is a fast growing company with a mission and has the ambition to be the world leader in its field. To support this growth we are hiring new colleagues. People that would like to make a difference and dare to dream big. With currently a 150 colleagues proudly working on our exceptional products. Working in a dynamic surrounding that runs full speed ahead. We need you! Product Developer

Bekijk vacature »

Developer (One Data)

Do you have experience with managing IT Teams in a service delivery organization? Are you keen to bring the team and our platform to a higher level? Then Nutreco has a very interesting role for you! As a One Data developer you are responsible for the management, running and functional use of our integration landscape and processes within Nutreco. Nutreco is using at this time BizTalk 2016, and Apigee for its API management, to be replaced by Azure Integration Services as of 2023. You will be part of a virtual teams of 11 people (own and outsourced) working in an

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 »

Fullstack developer

Functie omschrijving We are looking for a dutch native speaker Wil jij werken als Senior Developer en werken aan een applicatie die duizenden marketingcampagnes automatisch aanstuurt? Dit is je kans! Kom werken voor onze opdrachtgever en in deze rol zul je veel vrijheid en verantwoordelijkheid krijgen om gezamenlijk de applicatie naar een hoger plan te tillen. Wat ga je verder doen: Optimaliseren, beheren en uitbreiden van onze applicatie; Het bouwen van aansluitingen op de systemen van partners middels API’s; Meedenken over de technische/ontwikkel-standaarden; Proactief verbeterpunten voorstellen. Bedrijfsprofiel Het is een organisatie die met een team van verschillende developers én marketeers

Bekijk vacature »

Medior PHP Developer

Functie omschrijving Ben jij een getalenteerde PHP Developer en aan de slag in een gemotiveerd team? Lees dan snel verder! Voor onze opdrachtgever in de omgeving van Valkenswaard zijn we op zoek naar een ervaren PHP developer. Jij gaat hier zorg dragen voor het optimaliseren en up-to-date houden van de bestaande applicaties. Je werkt verder aan de applicaties die jij verder ontwikkelt. Dit doe je voornamelijk met PHP en MySQL. Verder ga je je bezig houden met: Het uitbouwen van het E-commerce software platform. Deelnemen aan overleggen met het team. Het ondersteunen van jouw team developers (3 man) en helpen

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 »

C#.NET ontwikkelaar

Functieomschrijving Voor een gewaardeerde werkgever in regio Tilburg zijn wij op zoek naar een C#.NET ontwikkelaar. Je bent verantwoordelijk voor het ontwikkelen van dashboards, webapplicaties en apps voor de eigen IOT-oplossingen. Samen met een vooruitstrevend team van ontwikkelaars en engineers krijgen jullie de opdracht om de sensoren in de apparatuur te scannen en vervolgens de data om te zetten in belangrijke inzichten voor de klanten. Taken en verantwoordelijkheden: Heb jij ideeën over nieuwe technieken die jullie kunnen implementeren? Hier wordt echt naar je geluisterd en gekeken of jouw idee daadwerkelijk ingezet kan worden; Je gaat aan de slag met de

Bekijk vacature »

Hands-on Solution Architect / Software Architect (

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Solution Architect / Software Architect op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je werkt samen met gedreven DevOps teams, bestaande uit frontend, backend en middleware developers, testers, UX-designers. Samen met de teams ben je continu op zoek naar de beste oplossingen voor onze klanten. Als Solution Architect onderzoek

Bekijk vacature »

Java Developer

Java Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Ontwikkelaar MS Dynamics 365 Projecten

Samengevat: Deze werkgever is de kwaliteitsdienst in de tuinbouwsector. Ben jij een ervaren ontwikkelaar? Heb jij ervaring met Ms Dynamics 365 BC? Vaste baan: Ontwikkelaar Ms Dynamics 365 BC ICT MBO 3.500 - 5.000 Ontwikkelaar Ms Dynamics 365 BC Ons bedrijf bewaakt en bevordert de kwaliteit van producten, processen en ketens in de tuinbouw. Wij kenmerken zich door openheid, ruimte voor initiatief, collegialiteit en zelfontplooiing. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Functie: Voor de vacature als Ontwikkelaar Ms Dynamics 365 BC Roelofarendsveen MBO

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 »

SQL database developer

Functie omschrijving Voor een software bedrijf in omgeving Breda zijn wij op zoek naar een SQL database ontwikkelaar. Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het huidige team developers zijn wij op zoek naar een SQL database ontwikkelaar. De klanten van dit groeiende bedrijf zitten door heel Europa en jouw werkzaamheden zullen er als volgt uitzien: Het samenstellen van de software op basis van de input vanuit de klant (T-SQL & C#.NET). Het bezoeken van klanten om de processen en mogelijkheden in kaart te brengen. Het ontwerpen van databases met T-SQL als programmeer laag.

Bekijk vacature »

Gezocht: Ervaren VB6 developer met C# ambitie!

Bedrijfsomschrijving Dit bedrijf is een vooraanstaande softwareleverancier die gespecialiseerd is in het ontwikkelen van software pakketten voor autoschade herstel bedrijven. De software wordt gebruikt door meer dan de helft van alle autoschade herstel bedrijven in Nederland. Het team van professionals is op zoek naar getalenteerde collega developers die hun vaardigheden willen inzetten om het bedrijf te laten groeien. Functieomschrijving Voor dit bedrijf zoek ik een ervaren VB6 / VB.NET developer met interesse om op termijn verder te gaan in C#. In deze functie ben je verantwoordelijk voor het onderhouden van de bestaande softwarepakketten. Een deel van de code is nog

Bekijk vacature »

Cymer Patch Server Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12919 Introductie This new patch server will be built on Python and Django ReST and GraphQL services with a React frontend, it will consist of several microservices and run on a Kubernetes cluster. It will be supported by several middleware applications such as ElasticSearch, Redis, RabbitMQ, Oracle and Artifactory. Functieomschrijving The Patch Admin team always aim to deliver software at a high quality, we avoid sacrifices here to maintain our velocity. Practically this means that we practice test driven development and perform end-to-end automated testing on our software. This means

Bekijk vacature »

Back end developer Python, PHP

Functie Jij als full stack ontwikkelaar zult komen te werken samen met 1 PHP ontwikkelaar een PO en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult voornamelijk (lees 75%) werken aan de roostersoftware. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere flexwerkers ingezet kan worden. Verder willen ze financiële koppelingen gaan maken

Bekijk vacature »
Edward Butter

Edward Butter

14/03/2022 14:57:08
Quote Anchor link
Ken je dat?
Het werkt jaren.
Je zet het over en het werkt niet meer.
Alles geprobeerd maar niks.

Ik geef de essentie:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
    header("cache-control: no-store, max-age: 0");
    class site {
        function
site() {
            $this->test = "Dit is de test";
        }
    }

    $site = new site();
    echo "test: ".$site->test;
?>


Output is:
test:

Ik verwacht:
test: Dit is een test
 
PHP hulp

PHP hulp

20/04/2024 12:50:18
 
- Ariën  -
Beheerder

- Ariën -

14/03/2022 15:33:46
Quote Anchor link
Je moet $this->test wel returnen ;)
 
Ivo P

Ivo P

14/03/2022 15:35:21
Quote Anchor link
dit komt uit een server die op PHP 5.6 draaide en dat doet het nu niet op PHP 7+ ??

Dan probeer het eens op regel 4 met
function __construct()

Toevoeging op 14/03/2022 15:42:16:

na php 5.6 verviel de mogelijkheid om een functie te hebben die dezelfde naam had als de class en die dan als magische construct te gebruiken.

(mogelijk zelfs al bij PHP 5.3)

In elk geval was jouw methode een PHP4 optie.

We hebben het over het jaar 2004 dan __construct geïntroduceerd werd. (ik kan het me nog vaag herinneren)
Gewijzigd op 14/03/2022 15:43:09 door Ivo P
 
Edward Butter

Edward Butter

14/03/2022 16:53:55
Quote Anchor link
- Ariën - op 14/03/2022 15:33:46:
Je moet $this->test wel returnen ;)


Niet echt toch?
Dit script draaide tot een week geleden bij Mijndomein.
Ik heb daar de boel opgezegd en een nieuw account aangemaakt waar ik het script naartoe heb gekopieerd.
Plots werkt het niet meer.
Returnen hoeft niet in een class en die functie mag gewoon site heten.
Nou ja misschien niet want het is versie 8 die nu draait.
 
Ozzie PHP

Ozzie PHP

14/03/2022 17:03:03
Quote Anchor link
>> Niet echt toch?

Nee, ik denk dat Ariën zich vergiste. Omdat het een class property is, hoeft er niks gereturned te worden.

>> Plots werkt het niet meer.

Je moet construct gebruiken zoals Ivo P aangaf.

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

class site {

  public $test;

  function
__construct() {
    $this->test = "Dit is de test";
  }

}


?>

En ook even netjes de property declareren :-)
 
Ivo P

Ivo P

14/03/2022 17:07:36
Quote Anchor link
PHP 8 ligt een eeuwigheid voor op jouw constructie met een "construct met dezelfde naam als de class"

wees er op voorbereid dat er meer niet werkt.
Ik denk aan mysqlfuncties, regex functies, warnings bij het voeren van een functie als parameter die "by reference" bedoeld was (sowieso een vieze manier van werken) en hier en daar ander gedrag van een functie.
 
Edward Butter

Edward Butter

14/03/2022 17:07:48
Quote Anchor link
Die __construct werkt maar waarom die "public $test"?
Er bestaat helemaal geen variabele $test.

Maar bedankt het werkt.
 
Ivo P

Ivo P

14/03/2022 17:09:13
Quote Anchor link
het is geen variabele, maar een propery.

En die gebruik je op regel 8: $this->test = iets.

wel zo netjes om die dan vooraf aan te melden.
 
Edward Butter

Edward Butter

14/03/2022 17:12:43
Quote Anchor link
Volgens mij zit je ernaast.
Het is een eigenschap. Dat is waar.
In de originele class zitten wel honderd properties er zijn nog meer classes.
Lijkt mij toch niet dat ik alle properties één voor één public zou moeten moeten maken.
 
Ivo P

Ivo P

14/03/2022 17:16:25
Quote Anchor link
misschien niet public.
Maar als je hem niet als private of protected definieert, zal hij public zijn.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$test
= new test();
echo $test->test;

$test->watanders = 123;

// en nu bevat je object ook ineens een property $watanders;

$test->test = 'mijn waarde';
// en nu is van buiten af de prop $test overschreven. Wil je dat wel laten gebeuren?
?>
 
- Ariën  -
Beheerder

- Ariën -

14/03/2022 17:55:39
Quote Anchor link
Ozzie PHP op 14/03/2022 17:03:03:
>> Niet echt toch?

Nee, ik denk dat Ariën zich vergiste. Omdat het een class property is, hoeft er niks gereturned te worden.


Klopt, ik was ook even vergeten dat een method met de zelfde naam als de class nu als een aparte method gezien wordt, en niet direct geladne wordt, wat een construct wel doet. Zorg tevens altijd voor goede naamgeving met get's en set's.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

14/03/2022 18:54:01
Quote Anchor link
> In de originele class zitten wel honderd properties er zijn nog meer classes.
Lijkt mij toch niet dat ik alle properties één voor één public zou moeten moeten maken.

Je hebt geluk dat PHP (nog steeds) erg flexibel is. Als je geen property declareert dan maakt PHP er "on the fly" een public property van.

Maar een goede gewoonte is om je class variabelen netjes te declareren en eventueel te initialiseren.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
class Test {

    public $a; // declaratie
    public $b = 0; // declaratie en initialisatie
}


Of:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
class Test {

    public $a; // declaratie
    public $b; // declaratie

    public function __construct()
    {
        $this->b = 0; // initialisatie
    }
}



Toevoeging op 14/03/2022 18:56:54:

Als een class meer dan enkele tientallen variabelen heeft dan klinkt mij het in de oren als dat je class veel te veel verantwoordelijkheden heeft die je eigenlijk zou moeten uitsplitsen over meerdere classes...
Gewijzigd op 14/03/2022 18:54:29 door Frank Nietbelangrijk
 
Ad Fundum

Ad Fundum

15/03/2022 08:49:55
Quote Anchor link
Het voorbeeld kan met minder code toe:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
class site {
  public $test = 'Dit is de test';
}

echo 'test: ' . (new site)->test;
?>


Frank Nietbelangrijk op 14/03/2022 18:54:01:
> In de originele class zitten wel honderd properties er zijn nog meer classes.
Lijkt mij toch niet dat ik alle properties één voor één public zou moeten moeten maken.


Dat PHP 'automatisch' de waarden aanmaakt lijkt handig, maar je debugged je helemaal suf als je ergens per ongeluk een tikfoutje hebt gemaakt.
Daarom hebben veel mensen een basisklasse van waarop elke andere klasse extend:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
abstract class basis {
  protected function fout($k) {
    trigger_error('Eigenschap "' . $k . '" van object "'
      . get_class($this) . '" bestaat niet of is niet publiek.');
  }
  function
__get(string $k) {$this->fout($k);}
  function
__set(string $k, $v) {$this->fout($k);}
}

class site extends basis [...]
?>
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/03/2022 00:11:33
Quote Anchor link
>> Dat PHP 'automatisch' de waarden aanmaakt lijkt handig, maar je debugged je helemaal suf als je ergens per ongeluk een tikfoutje hebt gemaakt.

Eens. Dit is typisch PHP. Eigenlijk eigenaardig dat dit in versie 8 nog steeds niet op zijn minst een notice oplevert.
 



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.