Skocz do zawartości
PL
Szukaj na Pecetowiczu
  • Utwórz konto

[PHP] Zamiana pierwszej spacji po określonej liczbie znaków


Rekomendowane odpowiedzi
(edytowane)

Skrypt podmienia pierwszą spację po określonej liczbie znaków na pipe ( | ):

Spoiler

<?php
function findSpaces(string $str) :array {
    $str = str_split(trim($str));
    $arr = [];
    
    foreach($str as $key => $val) {
        if($val === ' ') {
            array_push($arr, $key);
        }
    }
    
    return $arr;
}

function addBreak(string $str, int $int) :string {
    $str = trim($str);
    $arr = findSpaces($str);
    $control = false;
    
    foreach($arr as $key => $val) {
        if($val >= $int) {
            $str[$val] = '|';
            $control = true;
            break;
        }
    }
    
    if(!$control) {
        $str[$arr[count($arr) -1]] = '|';
    }
    
    return $str;
}

$str = 'Ala ma kota';
$str = addBreak($str, 5);
echo $str;

 

 

Jeżeli nie ma już spacji po danej liczbie - pipe pojawia się na ostatniej spacji w określonym ciągu znaków.

Live demo:

PHP Sandbox, test PHP online, PHP tester

Edytowane przez BlackIce
Odnośnik do komentarza
Udostępnij na innych stronach

Kontynuuj dyskusję

Dołącz do Pecetowicza, aby kontynuować dyskusję w tym wątku.

  • Dodaj nową pozycję...
  • Dodaj nową pozycję...