0

文字列でロジックを試していますが、文字列操作関数で問題に直面しています。この以下のアプローチに適した関数は次のとおりです。

私の文字列は "Hello" です。最初の文字列 "Hello------------" の後に "------------------" を追加したいです。 --" となり、文字列操作後の文字列の長さは 20 になります。

文字列に「------------------」を追加して長さを20にしたい。

言い換えると:Hello+Underscores

文字列の長さが長すぎる場合は、文字列をトリミングできます。

以下は私が試したコードです。

<?php
$challenge = 'hello'; 

$length = strlen($challenge);

$i= $length +1;
$challenge=substr($challenge,0,$i);

echo  $challenge.'<br>';

?>

文字列の連結を試しましたが、このロジックでは使用できないと確信しています。文字列の追加はpreg_replace.

誰かがそれについて良いアドバイスを与えることができます!

4

6 に答える 6

2

を使用するだけstr_padです。

$input = 'hello';
$output = str_pad($input, 20, '_');
echo $output;

デモ: http://ideone.com/0EPoV2

于 2013-07-31T10:19:40.177 に答える
2

どうぞ

<?php
    $string = "anything";

    echo substr($string."------------------------------------------",0,20);
?>

文字列の最初の 20 文字と ------------------------ を使用するだけです

何らかの理由で元の質問に記載されていない新しい要件に基づいて編集します。

<?php
    $string = "anything";
    $newstring = substr($string."------------------------------------------",0,20);
    echo $newstring."whatever you want to add at end";
?>
于 2013-07-31T10:13:52.290 に答える
2

これを試して

<?php
$input = "HELLO";
echo str_pad($input, 10, "----", STR_PAD_RIGHT); 
?>

これ$inputは文字列で、10追加された文字の長さです STR_PAD_RIGHTは位置です

このリンクを見るPHP.net

于 2013-07-31T10:18:46.323 に答える
1
$str = 'Hello';
$str .= "_";
while(strlen($str) <= 20){
$str .= "-";
}
echo $str;
于 2013-07-31T10:14:32.783 に答える
1

このコードを試してください

$challenge = 'hello';

$length = strlen($challenge);
if($length < 20){
    $limit = 20-$length;
    for($i=0;$i<$limit;$i++){
        $challenge .= '_';
    }
}
echo $challenge;
于 2013-07-31T10:15:58.753 に答える