omgekeerde range()

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Java developer

Als Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze klanten. Geen werkdag is hetzelfde, je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfskritische systemen. Een voorbeeld hiervan is een cliënt-volgsysteem bij Reclassering Nederland. Andere klanten waar wij onder andere voor werken: KPN, Philips, Nationale-Nederlanden, Kamer van Koophandel, ABN AMRO, Bovemij, Arval en de Politie. Werken bij Sogeti Nieuwe ontwikkelingen volgen we op de voet en delen we binnen de

Bekijk vacature »

Senior .NET developer

Functie As a Senior .NET developer you will work in our Research & development team. Our team consists of 17 colleagues! We are currently busy setting up a completely new architecture for a new product. We use VS2022 and .NET 6.0 for our new product. Your function is therefore mainly backend oriented. Since we develop measuring equipment for the chemical industry, it is also very important to develop high-quality software for its control. You are also responsible for designing, implementing and testing new features. For this position its also very important to ensure future-proof and sustainable architecture. Eisen - A

Bekijk vacature »

PHP developer (Laravel/Vue.js)

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

Laravel PHP developer in een jong team

Bedrijfsomschrijving Als je op zoek bent naar een werkplek waar plezier en uitdaging hand in hand gaan, dan is dit bedrijf de juiste keuze voor jou. Hier kun je werken aan uitdagende projecten en krijg je als developer veel verantwoordelijkheid. Het bedrijf waardeert kwaliteit boven kwantiteit en richt zich op het ontwikkelen van hoogwaardige applicaties en websites waar klanten enthousiast over zijn. Dit bedrijf is vooruitstrevend en streeft naar het leveren van de best mogelijke resultaten voor hun klanten. Als medior PHP ontwikkelaar met 3 jaar ervaring ben jij de persoon die we zoeken. Je krijgt hier de kans om

Bekijk vacature »

Mendix Developer

For our client in Amsterdam, we are looking for a Senior Mendix Developer. Company description Our client is an IT Consultancy company who’s been active for 10 years now. With their ambitious team, they are working with different clients in order to help them with analyzing their data and giving advice to them, regarding how they can use their data in the smartest ways, or to make sure that their mobile or web applications are working efficiently. As you get a glimpse of various industries, it is guaranteed that no day will be the same. Job description As a Mendix

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Software developer

Functieomschrijving Voor een gewaardeerde werkgever in de regio van Middelburg zijn wij op zoek naar een ambitieuze PHP/Symfony Developer. Een enthousiast persoon die het development team komt versterken met het aanpakken van complexe en nieuwe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel persoonlijke als professionele groei? Lees dan snel verder! Dit ga je doen: Aanpassingssuggesties van collega’s in kaart brengen, vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Ontwikkeling en beheer van de serviceportal in Symfony en

Bekijk vacature »

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Als developer bouw je in DevOps teams aan enterprise applicaties, nieuwe IOT, Chatbots of AI oplossingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren in dit vakgebied. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij vorig jaar Microsoft Partner of the year geworden.

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 »

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 »

Low Code Developer - Consultant

Functie omschrijving Wil jij fungeren als een spin in het web en samenwerken met klanten? Voor een leuke en interessante opdrachtgever in omgeving Leiden zijn wij op zoek naar een Low Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten en het leiden van projecten. Ben jij toe aan een nieuwe uitdaging en heb jij verstand van datamodellering en NO CODE Platformen? Lees dan snel verder! Bij deze rol horen de volgende werkzaamheden: Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform,

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van IT Operations Manager! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving Startende Software Ontwikkelaar gezocht met kennis van C# .NET! Ben jij net klaar met je opleiding en ben je op zoek naar je eerste echte werkervaring? Of heb jij al enige werkervaring maar ben toe aan iets nieuws? Dan is dit de perfecte kans voor jou! Wij zoeken namelijk een Junior Software Ontwikkelaar die klaar is voor een nieuwe uitdaging bij een leuke werkgeven in de regio Zeist. In deze functie werk jij vaak aan verschillende projecten en ga je bij klanten op bezoek. Ben jij op zoek naar een functie met uitdaging, diversiteit en verantwoordelijkheid? Dan is

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Amersfoort gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Pagina: 1 2 volgende »

Johan M

Johan M

23/01/2008 16:08:00
Quote Anchor link
Beste PHPhulpers,

Ik ben op zoek naar een scriptje of functie die het volgende voor mij kan doen:

De cijfers "1, 2, 3, 4 en 5" versimpelen naar "1 - 5" (1 tot en met 5 dus), maar ook:
"1 2 3 5 6 7" naar "1 - 3, 5 - 7".

Voor mijn gevoel is dit de functie range() omgekeerd, maar ik weet dus niet hoe ik dit voor elkaar moet krijgen.
De getallen worden nu weergegeven door een simpele echo, dit kan worden omgezet naar en array.

Hopelijk kan iemand mij hiermee helpen,
grzz. Johan.
Gewijzigd op 01/01/1970 01:00:00 door Johan M
 
PHP hulp

PHP hulp

26/04/2024 02:02:00
 
Frank -

Frank -

23/01/2008 16:22:00
Quote Anchor link
Zo uit de handleiding:
Quote:
range() geeft een array van elementen van low naar high, inclusief. Wanneer low > high, dan zal de reeks lopen van high naar low.


Daarnaast kun je een array ook sorteren, zowel van laag naar hoog als hoog naar laag. Zie sort() en zijn vriendjes.
 
Wessel Johnson

Wessel Johnson

23/01/2008 16:24:00
Quote Anchor link
Dit misschien:

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

$arr
[] = 1;
$arr[] = 2;
$arr[] = 3;
// Enz

echo $arr[0].' - '.end($arr);

//Niet getest

?>
 
Robert Deiman

Robert Deiman

23/01/2008 16:29:00
Quote Anchor link
Wat je zou kunnen doen is de string:

123567 eerst in een array zetten, en dan met een for lus (van min naar het max nummer wat er in staat) controleren of alle waarden er in staan die tussen - en max zitten.

Sla dan de beginwaarde op in een variabele (Array is handigst!!) en begin met het doorlopen van de mogelijkheden. Staat een waarde niet in de array, neem dan die waarde -1 als laatste waarde, en start een nieuwe reeks die verder telt dan waar je bent.

Maar je zit wel met een probleem als je hoger dan 10 komt, want hoe bepaal je:

123567910 dat dan de 10 niet gewoon 1 en 0 zijn?
 
Arjan Schuurman

Arjan Schuurman

23/01/2008 16:40:00
Quote Anchor link
Quote:
range() geeft een array van elementen van low naar high , inclusief. Wanneer low > high, dan zal de reeks lopen van high naar low.
Gooi er dan gewoon even een array_reverse() over en klaar is kees of in dit geval Johan.
 
Johan M

Johan M

23/01/2008 17:15:00
Quote Anchor link
Bedankt voor de reacties, ik ga even een poosje prutsen met de genoemde suggesties.

Ik hoopte dat er een of andere functie voor zou zijn, maar aangezien niemand die noemt begrijp ik dat het niet eens zo'n heel slechte vraag was.

Robert_Deiman schreef op 23.01.2008 16:29:
...
123567910 dat dan de 10 niet gewoon 1 en 0 zijn?
Dit probleem is denk ik niet aan de orde omdat all getallen gescheiden zijn. Hetzij door komma's of spaties o.i.d., of als aparte variabelen in een array, dat maakt niet uit.
 
Robert Deiman

Robert Deiman

23/01/2008 17:24:00
Quote Anchor link
Owja. ;) Het valt me nu pas op dat er een spatie tussen staat, dus dat zal dan geen probleem vormen.

Ik ken daar inderdaad geen functie voor, en het is geen slechte vraag. Vind 't wel een leuk vraagstuk eigenlijk.

Hopelijk kan je wat met mijn suggestie..
 
- SanThe -

- SanThe -

23/01/2008 18:26:00
Quote Anchor link
Hoe gek wil je het hebben?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);

$arr = array_merge(range(1, 5), range('z', 'm'), array(9, 'A'), range(8, 4));

echo '<pre>';
print_r($arr);
echo '</pre>';

?>

Edit: Volgens mij heb ik de vraag niet goed gelezen. Sorry. :-)
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 
Johan M

Johan M

23/01/2008 18:36:00
Quote Anchor link
Creatief hoor SanThe, maar idd niet helemaal wat ik zoek :)
 
- SanThe -

- SanThe -

23/01/2008 18:41:00
Quote Anchor link
Hoe krijg je die data binnen? In een string? Met komma's, spaties of wat dan ook er tussen? Zijn het altijd alleen getallen?
 
Johan M

Johan M

23/01/2008 18:45:00
Quote Anchor link
Het zijn inderdaad altijd alleen getallen die uit een SQL-database komen, nu geef ik ze weer met een echo, maar dit zou net zo makkelijk een array kunnen worden. Hier valt altijd wel een mouw aan te passen. Hoe de getallen gescheiden worden maakt dus ook niet uit.
 
Robert Deiman

Robert Deiman

23/01/2008 18:51:00
Quote Anchor link
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
//string with space separated
$sSpacesep = '1 2 3 4 6 7 8 10 11 12';
//string with comma separated
$sCommasep = '1,2,3,5,6,7,12,13,14,16';

function
createrange($sString,$separator = ' '){
    $aNumbers = explode($separator,$sString);
    $j=1;
    $aNumarray = array();
    for($i=1; $i <= max($aNumbers); $i++){
        
        if(in_array($i,$aNumbers)){
            $aNumarray[$j][] = $i;        
            }

        else{
            $j++;
            }
        }

    $sRange = '';
    foreach($aNumarray as $key => $value){
        if(count($aNumarray[$key]) > 1){
            $sRange .= min($aNumarray[$key]).'-'.max($aNumarray[$key]).' ';
            }

        else{
            $sRange .= min($aNumarray[$key]).' ';
            }
        }

    return $sRange;
    }

    
// example for how to use it with a space separated string
echo createrange($sSpacesep);
// example for how to use it with a comma separated string
echo '<br />';
echo createrange($sCommasep,',');
?>


Edit:

De wijziging bevat nu ook dat je een losstaand nummer ook goed weergegeven wordt.
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 
- SanThe -

- SanThe -

23/01/2008 18:53:00
Quote Anchor link
Maar om iets te maken wat er mee om kan gaan, moet je op zijn minst weten hoe je het binnen krijgt.
 
Joren de Wit

Joren de Wit

23/01/2008 18:55:00
Quote Anchor link
@Robert: komt in de richting. Gaat alleen nog niet helemaal lekker met een reeks als 1, 2, 3, 5, 7, 8, 9 waarbij er dus ook ranges zijn waarin maar 1 getal voorkomt...

Edit:
Je had het al veranderd zie ik :-)
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Robert Deiman

Robert Deiman

23/01/2008 18:56:00
Quote Anchor link
SanThe schreef op 23.01.2008 18:53:
Maar om iets te maken wat er mee om kan gaan, moet je op zijn minst weten hoe je het binnen krijgt.


@SanThe
Zie mijn voorbeeldfunctie ;) Hij gaat er standaard vanuit dat het met een spatie is gescheiden, maar ook met , of elk ander leesteken is prima mogelijk als je dat maar aangeeft.

Je kan ook bijvoorbeeld (omdat je weet dat er alleen maar gehele getallen in mogen staan) controleren een array samenstellen met alle mogelijke scheidingstekens. Komt 1 van die tekens voor, dan kan je het daarop laten scheiden.

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
<?php
//string with space separated
$sSpacesep = '1 2 3 4 6 7 8 10 11 12';
//string with comma separated
$sCommasep = '1,2,3,5,6,7,12,13,14,16';

function
createrange($sString,$separator = ' '){
    
    if(!is_array($sString)){
        $aNumbers = explode($separator,$sString);
        }

    else{
        $aNumbers = $sString;
        }

    $j=1;
    $aNumarray = array();
    for($i=1; $i <= max($aNumbers); $i++){
        
        if(in_array($i,$aNumbers)){
            $aNumarray[$j][] = $i;        
            }

        else{
            $j++;
            }
        }

    $sRange = '';
    foreach($aNumarray as $key => $value){
        if(count($aNumarray[$key]) > 1){
            $sRange .= min($aNumarray[$key]).'-'.max($aNumarray[$key]).' ';
            }

        else{
            $sRange .= min($aNumarray[$key]).' ';
            }
        }

    return $sRange;
    }

    
// example for how to use it with a space separated string
echo createrange($sSpacesep);
// example for how to use it with a comma separated string
echo '<br />';
echo createrange($sCommasep,',');
?>


En in deze versie maakt het niet uit of er een array of een string als input wordt gegeven.
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 
Johan M

Johan M

23/01/2008 18:57:00
Quote Anchor link
Tnx Robert, daar kan ik idd wat mee.

@ SanThe: dat maakt mij dus niet uit, ikzelf was iets aan het proberen op een manier waarmee het als array binnen komt, maar ik schreef dat het nu wordt weergegeven als een lijst met getallen. Daarom is Robert's manier nog mekkelijker! Het is net de manier waarop jij er iets mee kunt om dit op te lossen, de input die er in moet krijg ik wel voor elkaar.

Dat losse getal kan eventueel opgelost worden door een "if (mysql_num_rows($result) == 0)", maar lijkt met met deze laatste versie niet meer nodig.
Gewijzigd op 01/01/1970 01:00:00 door Johan M
 
Robert Deiman

Robert Deiman

23/01/2008 19:03:00
Quote Anchor link
@Johan
Dat losse getal is in ondertussen al opgelost, hij kijkt of er wel meer dan 1 waarden staan in een array. Zo ja, dan komen de min en de max met een streepje ertussen. Is het er maar 1, dan komt de enige waarde gewoon los in de output.

Het is nu in de laatste versie ook mogelijk om via een array te werken, als je dat prettiger vind.

Maar misschien dat het nog mooier is om 2 getallen die achter elkaar komen (5 en 6 die bijv met zijn 2'en bij elkaar blijven) gewoon met een comma te doen. Ga ik ook nog even inbouwen.
 
Johan M

Johan M

23/01/2008 19:06:00
Quote Anchor link
Jep, ik was net mn bericht aan het updaten naar de laatste situatie :)

In ieder geval super bedankt voor deze functie, hij werkt super. Met de update die je voorstelt erbij lijkt het me helemaal geweldig.
Ik had lang zitten tobben en zitten Googlen, maar ik kwam er niet uit, dus ik ben heel blij dat er hier zo fantastisch meegedacht wordt.
 
Frank -

Frank -

23/01/2008 19:09:00
Quote Anchor link
Johan schreef op 23.01.2008 18:45:
Het zijn inderdaad altijd alleen getallen die uit een SQL-database komen
En waarom sorteer je niet in de query? SQL kent niet voor niks de optie ORDER BY....
 
Johan M

Johan M

23/01/2008 19:13:00
Quote Anchor link
Sorteren wordt inderdaad gedaan via de SQL-query. Hierdoor ontstaat bijvoorbeeld dit lijstje:

1,2,3,5
10,14,20,100
21,22,23,24,30,31,32,33,34

Daarom wil ik per regel (deze zouden wel eens heel lang kunnen worden) dat er dit wordt weergegven:

1-3, 5
10, 14, 20, 100
21-24, 30-34

Dit voor het overzicht, en dat gaat volgens mij helemaal lukken met Robert's function. Mocht je dit kunnen oplossen via de SQL, vertel het me dan graag!
 
Frank -

Frank -

23/01/2008 19:16:00
Quote Anchor link
Hoe ontstaan die lijstjes dan? Hoe ziet jouw datamodel eruit? En wat staat er in de diverse records aan data? Kun je daar een voorbeeldje van geven?

(ik vrees het ergste, het ziet eruit als gesorteerde tekst en geen getallen...)
 

Pagina: 1 2 volgende »



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.