omgekeerde range()

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

SQL developer

Functieomschrijving Voor een erkende werkgever in de omgeving van Tilburg zijn wij op zoek naar een ervaren SQL ontwikkelaar. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt er als volgt uit te zien: Het ontwerpen en implementeren van databaseschema's: Je bent in staat om een database te ontwerpen en de structuur van tabellen, relaties, indexen en andere objecten te definiëren; Het schrijven van complexe SQL-query's: Je kunt complexe query's schrijven om gegevens uit de database

Bekijk vacature »

Traineeship IT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

C#.NET Developer

Functieomschrijving Voor een software ontwikkelaar in de omgeving van Vught zijn we op zoek naar een gemotiveerde C# ontwikkelaar. Deel jij hun passie voor development en dan vooral in C#.NET? Dan kan dit wel eens jouw droombaan zijn! Jouw werkzaamheden zullen er ongeveer als volgt uit gaan zien Door de wensen van de klant goed te begrijpen ga jij aan de slag dit om te zetten naar passende oplossingen en werk je deze uit tot een sterk eindproduct. Je gaat je bezighouden met de ontwikkeling van webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Frameworks en C#.

Bekijk vacature »

Medior Java developer

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 »

SQL Developer

Functie omschrijving We are looking for a dutch native speaker Jij gaat in deze functie aan de slag met uitdagende projecten en het creëren van maatwerk software, vooral middels SQL. Iedere klant/project is weer anders, maar dat maakt dit bedrijf en de functie erg uniek & uitdagend. Verder heb je de volgende taken: Ontwikkelen en ontwerpen van SQL databases. T-SQL wordt hierbij gebruikt als programmeer laag; Optimalisatie van query's, voor een verbeterde efficiency; Begeleiden van junior developers, mits je dit leuk vindt; Heb je meer interesse in een rol als consultant, dan is dit ook mogelijk. Je heb hier meer

Bekijk vacature »

Front End Developer React Vue

Dit ga je doen Meewerken aan de implementaties en ontwikkeling van nieuwe functionaliteiten van de webapplicaties; Ontwikkelen met o.a. React en Vue en HTML/CSS, ook krijg je in verband met de samenwerking ook affiniteit met de backend Ruby on Rails; Ontwikkeling aan de front end voor de koppelingen tussen de diverse systemen; Ontwerpen van interfaces en een bijdrage leveren aan de gebruikerservaring; Zorgdragen voor hoge kwaliteit van code en jezelf (en anderen) blijven verbeteren; Als Senior Front End Developer begeleid je zelf ook FE-development projecten, hierin leid je de projecten en pak jij het initiatief op (bv integratieprojecten). Hier ga

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

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 »

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een leuke opdrachtgever in de omgeving van Hilversum! Voor een leuk bedrijf in de omgeving van Hilversum zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. Ben jij iemand die graag aan verschillende projecten werkt en het ook leuk vindt om bij klanten op bezoek te gaan? Dan ben jij de perfecte kandidaat! Deze functie is erg divers, je moet dus goed kunnen schakelen. Je komt te werken in een klein team van developers. Binnen het bedrijf hangt er een gemoedelijke informele

Bekijk vacature »

Front-End React Developer

Als Front-End React Developer verbeter je de user experience van onze eigen webapplicaties voor onze collega's binnen Coolblue. Wat doe je als Front-End React Developer bij Coolblue? Als Front-end React Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten met React.js. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Front-end React Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Verbeteren van de gebruiksvriendelijkheid van onze webshop

Bekijk vacature »

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

Node.js developer looking for a challenging consul

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

Full Stack Developer

Ben jij een kei van een full-stack developer? Heb je ambitie om te groeien en jezelf te ontwikkelen binnen een ambitieus bedrijf? Gaat jouw hart sneller kloppen van transpilers of frameworks zoals Angular, Vue of React? Dan ben jij de persoon die wij zoeken! Voor onze opdrachtgever zijn wij op zoek naar een full-stack developer om onderdeel te zijn van een team dat bestaat uit gedreven developers. Ieders met hun eigen specialiteiten en kennis van de projecten en behoeften vanuit de product owners. We zoeken iemand die met zijn/haar huidige competenties en domeinen dit team wil begeleiden, stimuleren en tevens

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

Medior/Senior Python developer

Functie Jij als Senior Python developer hebt al ruime ervaring opgedaan. Bedrijven komen bij de organisatie om technische vraagstukken op te lossen. Jij als specialist bent dus de representatie van deze kwaliteit. Je zult de keuze krijgen tussen lange of korte projecten waarin je komt te werken in multidisciplinaire teams. Projecten die je gaat uitvoeren zijn zeer uitlopend. Zodoende kun je aan de ene kant kiezen voor een greenfield project en stroom je bij een ander project midden in een migratietraject in. Voor de ene klant ontwikkel je ene nieuwe portal en voor het andere project duik je veel meer

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 03:26:45
 
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.