Singleton class, array unset element

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Senior PHP Developer

As a Senior PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible and you choach other colleagues on the hard and soft skills. How do I become a Senior PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little TypeScript or other technologies that might be used. Would you also like to become a PHP Developer at Coolblue? Read below if the

Bekijk vacature »

C#.NET developer

Functie Het development team bestaat momenteel uit vijf backend C#/.NET ontwikkelaars. Op dit moment zit één ontwikkelaar dedicated op de mobiele applicatie. Als team werk je samen aan het zelf ontwikkelde software platform. Dit bestaat uit zowel apps als websites. Om het systeem door meer dan honderdduizenden gebruikers wordt gebruikt is het bijna vanzelfsprekend dat de kwaliteit van het product hoog moet liggen. Het systeem bestaat uit drie projecten. Je werkt dus aan deze drie projecten waarbij de focus op z’n tijd verschuift. De technieken die worden toegepast zijn o.a. .NET Core, Xamarin, C# en MVC. Je zal dus met

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: 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 je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

PHP ontwikkelaar

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Applicatieontwikkelaar Java EE

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving De afdeling IV –

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar een Embedded Software developer. Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij enthousiast en een echte team player? Lees dan snel verder en laat wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot aantal creatieve en ambitieuze ontwikkelaars. Ze

Bekijk vacature »

Java Programmeur

Functie Heb jij altijd al samen willen werken met ervaren java ontwikkelaars dan hebben wij hier de ultieme kans voor jou! Voor een opdrachtgever in omgeving van Naaldwijk zijn wij op zoek naar uitbreiding van het vaste ontwikkel team. Je zult je hier voornamelijk bezig gaan houden met; Wijzigingsverzoeken van klanten uitvoeren, hier wordt je diep in betrokken; Samen met consultants sluit je aan bij gesprekken met klanten, voor alle projecten; Je schakelt veel met consultants, wat is de behoefte van de klant? Hoe kan je hierop integreren?; Het framework moet naar de Cloud gebracht worden, je wordt betrokken bij

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

Front-end (Angular) developer - remote werken

Functie Als Front-end (Angular) developer ga je aan de slag met het uitbouwen van hun webapplicatie, als één van de front-end experts ga je samen met collega’s in een devops team werken aan een nieuw front-end voor hun calculatie oplossing. Binnen de calculatiesoftware kunnen meerdere professionals tegelijk samenwerken, 3D calculaties uitvoeren en ook inzien met de benodigde specifieke details. Deze software wordt veel ingezet om projectbeschrijvingen en kosten in kaart te brengen, en tijdens de uitvoering te bewaken. Maar hiernaast liggen er in de toekomst veel meer plannen op het gebied van front-end in de andere applicaties. Genoeg te doen

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

Medior/senior PHP ontwikkelaar E-commerce

Functie Het software development team bestaat momenteel 5 scrum teams . Ieder team heeft een eigen SCRUM Master en eigen tester. Zij werken voornamelijk in PHP en met hun eigen geschreven framework wat Symfony based is . Jij bent samen met je collega’s verantwoordelijk voor het interne softwaresysteem en alle projecten die daar omheen lopen. Alles wat jij ontwikkelt, wordt direct toegepast en uitgerold (wereldwijd). Dit maakt jouw werk tastbaar en uitdagend! Een greep uit jouw werkzaamheden: Toevoegen en ontwikkelen van nieuwe functionaliteiten Logistieke software ontwikkelen voor intern gebruik Tientallen gigabytes aan data inzichtelijk maken Altijd op zoek gaan naar

Bekijk vacature »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Barendrecht! Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! Binnen deze rol houdt jij je met het volgende bezig: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps

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 »
- -

- -

07/10/2014 10:08:05
Quote Anchor link
Ik probeer met wat code een array van data te doorlopen en niet relevante data te verwijderen.

Een array zit er als volgt uit:

Quote:
[6] => Array
(
[710C27E0-822A-4513-9D44-D97E929484A9] => Array
(
[documents] => Array
(
[0] => error message
)

)

)


Ik gebruik onderstaande code:

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
<?php
class report {
    private static $instance;
    private $data = array();

    private function __construct() { }

    private function __clone() { }

    public function __destruct() { }

    public static function singleton() {
        if (!isset(self::$instance))
            self::$instance = new self();

        return self::$instance;
    }


    public function check() {
        foreach($this->data as $key => &$values) {
            foreach($values as $k => &$value) {
                /* some checks */

                if($return != null)
                    $values[$return] = $values[$k];

                unset($values[$k]);
            }
        }
    }


    public function __toString() {
        print_r($this->data);
        return '';
    }
}

?>


$return is een guid uit een andere database.
Wanneer ik een local variable namaak in de functie met de zelfde data als in $this->data worden de elementen wel verwijderd. Wanneer ik $data = $this->data doe werkt het niet.

Wanneer ik bovenstaande check functie vervang door onderstaande code werkt het wel, maar ik ben op zoek naar een betere/mooiere en vooral snellere oplossing.

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
    public function check() {
        $_data = json_encode($this->data);
        $data = json_decode($_data);

        foreach($data as $key => &$values) {
            foreach($values as $k => &$value) {
                /* some checks */
                if($return != null)
                    $values->$return = $values->$k;

                unset($values->$k);
            }
        }

        $this->data = $data;
    }

?>
Gewijzigd op 07/10/2014 11:22:40 door - -
 
PHP hulp

PHP hulp

26/04/2024 02:26:07
 
Frank Nietbelangrijk

Frank Nietbelangrijk

07/10/2014 11:49:46
Quote Anchor link
Het ziet er nodeloos ingewikkeld uit... wat is een guid? een random gegenereerd id toch? waarom noem je die dan $return? Noem m dan gewoon $guid!

Zelf zou ik ervoor kiezen om gewoon een nieuw eigen object/array te vullen met data die ik nodig heb in plaats van met allerlei trucs elementen te gaan unsetten. Zolang je dat in een functie doet en je de 'input' object/array in die functie declareert dan zal bij het verlaten van die functie het geheugen voor dat object/array ook weer vrijgegeven worden.'

Wat is het nut van data eerst omzetten naar JSON om het vervolgens op de volgende regel terug te zetten?
Kun je niet beter de JSON decoden naar een array in plaats van een object?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$data
= json_decode($_data, true);
?>


Toevoeging op 07/10/2014 12:05:50:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
function getData($json)
{

    $arr= json_decode($json, true);
    
    return array(
        'watiknodigheb' => $arr['bleh']['blah'],
        'watiknogmeernodigheb' => $arr['troep']
    );
}

?>
Gewijzigd op 07/10/2014 11:55:24 door Frank Nietbelangrijk
 
- -

- -

07/10/2014 12:15:39
Quote Anchor link
Een guid is een inderdaad een random id zoals "710C27E0-822A-4513-9D44-D97E929484A9". Ik heb niet de precieze code hier geplakt vandaar dat de naamgeving misschien iets verwarrend is.

De eerste array aan data word uit een database gehaald en daarna gecheckt of het in een andere database zit vandaar..

Blijkbaar gaat het met json_decode($_data, true); ook niet.. zou het kunnen liggen dat unset niet om kan gaan met een guid als key? daar begint het namelijk wel op te lijken, hoe raar dat misschien ook is..
 
Frank Nietbelangrijk

Frank Nietbelangrijk

07/10/2014 12:20:17
Quote Anchor link
unset kan alleen variabelen en array elementen laten verdwijnen. De inhoud van zo een variabele heeft daar niets mee te maken.
Gewijzigd op 07/10/2014 12:24:05 door Frank Nietbelangrijk
 
- -

- -

07/10/2014 12:58:54
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
var_dump($values);
print_r($values["710C27E0-822A-4513-9D44-D97E929484A9"]);
?>


returns:

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
array(1) {
  [
"710C27E0-822A-4513-9D44-D97E929484A9"]=>
  array(1) {
    [
"documents"]=>
    array(1) {
      [
0]=>
      string(12) "gonna expire"
    }
  }
}

PHP Notice:  Undefined index: 710C27E0-822A-4513-9D44-D97E929484A9
?>


Niet te begrijpen hier..

Toevoeging op 07/10/2014 13:13:42:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
    public function log($id, $guid, $job, $message) {
        $this->data[$id][$guid][$job][] = $message;
    }





SOLVED maar onbegrijpelijk..

als ik guid var_dump in de log functie krijg ik:
string(36) "710C27E0-822A-4513-9D44-D97E929484A9"

vervolgens heb ik toch (string) ervoor gezet om alles uit te sluiten.

var_dump((string)$guid);
string(36) "710C27E0-822A-4513-9D44-D97E929484A9"

en nu werkt het.
 



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.