2010-12-16 100 views
1

我有一个PHP的问题。 我有一个PHP代码,它打印一些长文本。 我想用“N”替换输出文本中的“n”字符。我可以创建一个函数。但我不能(也不喜欢!)把我的文本放到一个函数中(因为我有很多文本!)。 有没有办法用“N”替换“n”没有任何功能?替换文字无功能

谢谢..

+1

您可以将文本作为参数传递给函数。 – 2010-12-16 10:49:35

回答

4

无需创建功能,只需使用str_replace,内置的功能,为此,像这样:

$output_text = str_replace('n', 'N', $input_text); 
echo $output_text; 

[编辑]如果你不想把你的文本放在一个函数中,因为有很多文本(如你所说),这样做:

<?php 
ob_start(); 

//..... ALL YOUR CODE GOES HERE 

$FullOutput = ob_get_clean(); 
echo str_replace('n', 'N', $FullOutput); 
?> 

这有效地缓冲(捕获和存储)所有的输出,并最终得到它并将'n'替换为'N'并将其回声。

+0

是的,没有功能需要,但我不能在任何输出之前添加“str_replace()”。我有很多输出! – mrdaliri 2010-12-16 10:55:33

+1

@kikio,使用第二种方法。这样,它将自动获取所有输出并替换其中的文本。 – shamittomar 2010-12-16 10:56:41

+0

谢谢!有用!!! – mrdaliri 2010-12-16 11:03:28

0
<?php 
    $newString = str_replace('n','N',$oldString); 
?> 
0

str_replace让你做你需要的替换品。它也可以同时接受多个查找/替换对,它允许您在代码的中心位置定义这些对:

$replacements = array(
    'n' => 'N', 
    'foo' => 'bar', 
    // as many others as you want 
) 

// At some other point: 
$input = str_replace(
    array_keys($replacements), 
    array_values($replacements), 
    $output);