Hallo allemaal
Wellicht niet moeilijk maar ik kan geen oplossing vinden:

ik heb een string zoals: qwertyuiopas


daar wil ik in een opdracht: qwer tyui opas van maken.
De string moet dus om de vier karakters een spatie krijgen.
Nu kan ik dat wel met drie keer een substr() doen maar het lijkt mij beter om dat in een slag te doen.
Welke functie is hiervoor beschikbaar?
Geen standard php functie (voor zover ik weet), je zal daar een eigen functie voor moeten bouwen.
Mijn functie, zoals ik die nu gebruik:


function MaakOrdernummer() {
    // Genereren nieuw orderenummer
    $cBoekingsnummer = date('Y');
    mt_srand((int)(microtime()*1000000));
    $lengte = 8;
    for($j = 1; $j <= $lengte; $j++) {
        $tekennummer = mt_rand(48,57); // Een cijfer
        // Tekennummer toevoegen aan wachtwoord
        $cBoekingsnummer .= chr($tekennummer);
    }
    $cBoekingsnummer = substr($cBoekingsnummer,0,4) . " " . substr($cBoekingsnummer,4,4) . " " . substr($cBoekingsnummer,8,4);
    return($cBoekingsnummer);   
}

<?php
$string = 'qwertyuiopas';
$string = rtrim(chunk_split($string, 4));
echo $string;
?>
Ger van Steenderen op 10/06/2013 20:29:14

Geen standard php functie (voor zover ik weet), je zal daar een eigen functie voor moeten bouwen.


[php]chunk_split[/php]() toch?


[edit] Vorige reactie had ik nog net gelezen voordat ik reageerde. Sorry.
Ook ik kan nog leren.
De vraag is of de functie van George absolute uniekheid oplevert.
Waarom niet gewoon [php]uniqid[/php] gebruiken?
Wat ik me dan afvraag is waarom een order/boekingsnummer "geheim" moet zijn.

Waarom niet gewoon zoiets als Jaar-maand-volgnummer? Dan is het boekingsnummer ook nog eens betekenisvol. Bijv.

20130450

Dan kun je gelijk zien dat het om de 50e boeking gaat en dat die in april 2013 geboekt is.
Soms kan het leven heel simpel zijn. Heeft wellicht iets met oogkleppen of een oze bril te maken

Reageren