我正在尝试字符串中的逻辑,但在字符串操作函数中遇到困难。对于以下方法,哪种功能有用:
我的字符串是“你好”我想在第一个字符串“Hello ---------”之后添加“------------------” -----“字符串操作后字符串的长度应为20。
我想在字符串中添加“------------------”以使其长度为20。
换句话说:Hello+Underscores
如果字符串长度太长,我们可以修剪字符串。
以下是我尝试的代码。
<?php
$challenge = 'hello';
$length = strlen($challenge);
$i= $length +1;
$challenge=substr($challenge,0,$i);
echo $challenge.'<br>';
?>
我尝试过字符串连接,但我确信我不能在这个逻辑中使用它,我认为字符串添加应该使用preg_replace
完成。
有人可以给出一个很好的建议!
答案 0 :(得分: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";
?>
答案 1 :(得分:2)
str-pad是实现您的任务和代码示例的最简单方法,如下所示。
<?php
$input = "Alien";
echo str_pad($input, 10); // produces "Alien "
echo str_pad($input, 10, "-=", STR_PAD_LEFT); // produces "-=-=-Alien"
echo str_pad($input, 10, "_", STR_PAD_BOTH); // produces "__Alien___"
echo str_pad($input, 6 , "___"); // produces "Alien_"
?>
答案 2 :(得分:2)
试试这个
<?php
$input = "HELLO";
echo str_pad($input, 10, "----", STR_PAD_RIGHT);
?>
此处$input
是字符串,10
是添加的字符长度 STR_PAD_RIGHT 是位置
查看此链接PHP.net
答案 3 :(得分:2)
只需使用str_pad
。
$input = 'hello';
$output = str_pad($input, 20, '_');
echo $output;
答案 4 :(得分:1)
$str = 'Hello';
$str .= "_";
while(strlen($str) <= 20){
$str .= "-";
}
echo $str;
答案 5 :(得分:1)
试试这段代码
$challenge = 'hello';
$length = strlen($challenge);
if($length < 20){
$limit = 20-$length;
for($i=0;$i<$limit;$i++){
$challenge .= '_';
}
}
echo $challenge;