[Opgelost]Vreemd gedrag unset ()

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

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 »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Frontend Developer

Dit ga je doen Door ontwikkelen van het online platform Deel uitmaken van verschillende ontwikkelteams Meedenken over UI/UX vraagstukken Uitdragen van Front-end binnen de organisatie Hier ga je werken Deze organisatie, gevestigd in de omgeving van Amsterdam, is een grote onderwijs instelling met meerdere vestigingen en een groot aantal studenten. Zo telt deze organisatie +/- 35.000 gebruikers. Bij deze organisatie staat jouw ontwikkeling centraal en is er veel ruimte voor eigen initiatieven. In samenwerking met jouw team ga jij de online omgeving verder ontwikkelen. In de rol van Front end Developer zal jij 50% van jouw tijd werken in het

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Voor een opdrachtgever in omgeving Delft zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

Medior front-end developer gezocht (€3.300 -

Functie Wat ga je doen? Jij als front-end developer gaat werken binnen de teams van/voor onze klant. Je werkt in een team met starters en ervaren ontwikkelaars met allemaal 1 overeenkomst; passie voor het vak. Maak je een fout? Geen probleem, leer ervan en ga dan weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en jezelf dus snel ontwikkelen. Wat hebben we jou te bieden? • Uitdagende projecten bij mooie klanten (bij jou in de buurt, of binnenkort intern vanuit ons kantoor!) • Een jonge organisatie met talentvolle collega’s • Veel ruimte voor

Bekijk vacature »

Front end developer

Functie Binnen de functie van Front-end developer werk je mee aan uitdagende klantprojecten. In teamverband werk je aan de voorkant van onze state-of-the-art portaal oplossingen en apps. Dit alles gebeurt in een multidisciplinaire omgeving waarbij je de ruimte hebt om te sparren, je ideeën scherp te stellen, en waar je met de benodigde kennis en ervaring om je heen altijd terecht kunt bij je collega’s voor vragen en ondersteuning. Meestal werk je vanuit ons kantoor maar we bieden ook alle faciliteiten om thuis te kunnen werken. Voor sommige projecten ga je mee naar de klant, wellicht zelfs in het buitenland!

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een ambitieuze werkgever in regio Tilburg waar jij volledig de mogelijkheid krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je gaat projecten gedurende het hele proces begeleiden. Je sluit aan bij afspraken met klanten om hun processen helder te krijgen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt aan nieuwe softwareoplossingen die de logistieke processen verbeteren of vernieuwen; Je houdt je bezig met het ontwikkelen van

Bekijk vacature »

Software Developer C# / ASP .Net

Functie omschrijving Ben jij een software ontwikkelaar die bekend is met termen ASP .NET, C# en SQL? Lees dan snel verder! Voor een bedrijf binnen de agrarische sector zijn wij namelijk op zoek naar een zelfstandige, enthousiaste en proactieve Software Developer die open staat voor een afwisselende functie met veel uitdaging. Binnen deze organisatie ben jij als Software Developer samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Hierbij draag jij bij aan de vertaling van klantwensen naar effectieve softwareoplossingen. Daarnaast ben je verantwoordelijk voor: Schatten

Bekijk vacature »

Software developer

Werkzaamheden voor jou als software developer Voor een goede relatie in de regio Zwolle (meerdere locaties) zoeken wij een software developer die betrokken is bij de ontwikkelcyclus en verantwoordelijk is voor het testen en keuren van nieuwe en geoptimaliseerde software. In deze functie ben je in de implementatiefase de persoon die risico's beoordeelt en intern oplossingen aanbrengt om risico's te verkleinen. Binnen het ontwikkelteam van de software ben je een belangrijke schakel waar je intensief meewerkt met scrum. Het voorkomen van bugs in de programma's en het bevorderen van gebruiksvriendelijkheid voor eindklanten zijn voor jou een uitdaging en geeft voldoening

Bekijk vacature »

Functioneel Applicatiebeheerder

Wij van CNB zijn op zoek naar een leergierige Functioneel Applicatiebeheerder CNB is de grootste dienstverlener in de markt van bloembollen en vaste planten. In deze markt verricht CNB de volgende diensten: bemiddeling, veilen en het koelen en prepareren van bloembollen. Vanuit ons hoofdkantoor in Lisse werken bijna 100 collega’s dag in dag uit aan de bemiddeling van bloembollen. In Bovenkarspel vindt het koelen en prepareren van de bloembollen plaats. Wij zijn op zoek naar een enthousiaste Functioneel Applicatiebeheerder die naast een applicatie, ook sfeer kan bouwen! Jij: Vindt het leuk om binnen een klein IT-team aan de slag te

Bekijk vacature »

Backend Developer Scrummaster .NET

Samengevat: Deze werkgever is een ambitieus internetbedrijf met een passie voor digitale communicatie. Ben jij geschikt als Backend Developer? Heb je ervaring met .NET platform? Vaste baan: Backend Developer / SCRUM Master Scrum HBO WO €3.800 - €6.000 Deze werkgever is een innovatief bedrijf met enthousiaste mensen die jarenlang ervaring hebben met het ontwikkelen internet- en intranetoplossingen. Wij houden van korte lijnen en open en eerlijke communicatie. Wij zetten graag onze jarenlange ervaring in om perfect werkende oplossingen te ontwikkelen. Wij ondersteunen dienstverlenende organisaties bij het ontwikkelen en realiseren van een effectief, adaptief communicatieplatform. Je ontwikkelt met ons de meest

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 »

Front end developer Zorgplatform

Functie Jij als Front end ontwikkelen zult komen te werken samen met 1 PHP ontwikkelaar, 1 Python developer 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 als Front ender dus voornamelijk bezig zijn met het verbeteren van onze interfaces op onze verschillende producten. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere

Bekijk vacature »

Medior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Medior Front-end Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »
M A

M A

07/06/2011 20:16:54
Quote Anchor link
Hallo,
in de onderstaande code gedraagt de methode resetErrors () zich vreemd:
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
43
44
45
46
47
48
49
50
51
<?php
// file classes.php

class A
{
  private $errors;

  public function A ()
  {

    $this -> errors = array ();
   }


   public function getErrors ()
  {

    return $this -> errors;
  }


  public function resetErrors ()
  {

    unset ($this -> errors);
    $this -> errors = array ();
  }


  public function doSomeThing ()
  {

    B::doSomeThing ($this -> errors);
  }
}


class B
{
  public static function doSomeThing (&$errors)
  {

    if (1>2)
      $errors [] = "No, it is not possible";
    else
      $errors [] = "YES";
  }
}


class C
{
  public static function getErrorMessage ($errors)
  {

    $result = "";
    foreach ($errors as $error)
      $result .= $error;
    return $result;
  }
}

?>


en het bestand index.php:
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
<?php
  // file index.php
  include_once 'classes.php';

  session_start ();

  if (!isset ($_SESSION ['test'])
    $_SESSION ['test'] = new A ();

  $_SESSION ['test'] -> doSomeThing ();

  echo '<html><head><title>TEST</title></head><body>' .
    C::getErrorMessage ($_SESSION ['test'] -> getErrors ()) .
    '</body></html>';

  $_SESSION ['test'] -> resetErrors ();
?>


Als de code wordt uitgevoerd is, is de array errors bij het uitvoeren van getErrorMessage () leeg.
Nu als ik de laatste regel weg haal (dus $_SESSION ['test'] -> resetErrors ();) dan verschijnt het error-bericht wel op het scherm maar oude berichten blijven in de array.
Heeft iemand enig idee hoe dit komt?
Alvast bedankt!
Gewijzigd op 08/06/2011 00:18:54 door M A
 
PHP hulp

PHP hulp

24/12/2024 00:34:20
 
Obelix Idefix

Obelix Idefix

07/06/2011 22:17:09
Quote Anchor link
Ik zou in index.php de session start direct na het openen van php zetten en daarna pas een include doen.

Geen idee of het enig effect heeft, maar moet in $this -> erros = array (); (regel 10, classes.php) niet errors zijn?
 
Arjan -

Arjan -

07/06/2011 22:36:41
Quote Anchor link
Het is sowieso raar om eerst een unset() uit te voeren en vervolgens weer de variabele te definiëren. Een $this->errors = array(); is voldoende om een (lege) array aan te maken.
Unset verwijderd de gegeven variabele, waardoor officieel de variabale $this->errors niet meer bestaat, dus daarna deze weer aanmaken is onlogisch.
 
M A

M A

07/06/2011 22:58:57
Quote Anchor link
@Obelix en Idefix
ik heb die regel al aangepast. Dank je wel! Session start heeft daar niets mee te maken.

@Arjan:
Ik heb deze ook uitgeprobeerd met hetzelfde resultaat:
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
class A
{
  private $errors;

  public function A ()
  {
    $this -> errors = array (0);
   }

   public function getErrors ()
  {
    return $this -> errors;
  }

  public function resetErrors ()
  {
    foreach ($this -> errors as $index => $error)
      if ($index != 0)
        unset ($this -> errors [$index]);
  }

  public function doSomeThing ()
  {
    B::doSomeThing ($this -> errors);
  }
}

Maar deze heeft ook niet geholpen.
 
Dos Moonen

Dos Moonen

07/06/2011 23:15:42
Quote Anchor link
@Obelix en Idefix
Dan krijg je juist een error dat de classe A niet gevonden kan worden.
Hij zet een A object in de sessie, dus bij session_start() moet die classe beschikbaar zijn, of een autoloader geregistreerd zijn die classe A kan vinden.
Dus tenzij je via een php.ini/.htaccess standaard een php bestand vooraf laat includen zal je session_start() niet als eerste aan kunnen roepen.

@M A
Je hebt wel telkens nadat je een verandering hebt aangemaakt even een keer $_SESSION = array(); aangeroepen of je PHPSESSID cookie verwijderd?
Met de code uit je openingspost, na een extra ')' op regel 7 van index.php toegevoegd te hebben, krijg ik braaf 'YES' te zien op mijn scherm.

PS. gebruik a.u.b. curly brackets ('{' & '}') bij if, for, while etc. statements!
 
M A

M A

08/06/2011 00:15:41
Quote Anchor link
Dos Moonen op 07/06/2011 23:15:42:
@Obelix en Idefix
Dan krijg je juist een error dat de classe A niet gevonden kan worden.
Hij zet een A object in de sessie, dus bij session_start() moet die classe beschikbaar zijn, of een autoloader geregistreerd zijn die classe A kan vinden.
Dus tenzij je via een php.ini/.htaccess standaard een php bestand vooraf laat includen zal je session_start() niet als eerste aan kunnen roepen.

@M A
Je hebt wel telkens nadat je een verandering hebt aangemaakt even een keer $_SESSION = array(); aangeroepen of je PHPSESSID cookie verwijderd?
Met de code uit je openingspost, na een extra ')' op regel 7 van index.php toegevoegd te hebben, krijg ik braaf 'YES' te zien op mijn scherm.

PS. gebruik a.u.b. curly brackets ('{' & '}') bij if, for, while etc. statements!

@Dos Moonen:
Thanx! In de echte code had ik een header gebruikt waarna geen die stond. Dat was de boosdoener. Jouw reactie was een eyeopener.
Gewijzigd op 08/06/2011 00:18:19 door M A
 



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.