想要一种更有效的方法来替换字符串值

noy*_*dar 1 php arrays string str-replace

我觉得必须有一种更有效的方法来获得相同的结果.我从SQL查询中获取数据.其中一些值返回"Y"或"N",我将其替换为"是"或"否".所以我将每个领域定位如下:

$pool= $row['POOL'];
$pool= str_replace("Y","Yes",$pool);
$pool= str_replace("N","No",$pool);
echo $pool

$wf= $row['WATERFRONT'];
$wf= str_replace("Y","Yes",$wf);
$wf= str_replace("N","No",$wf);
echo $wf
Run Code Online (Sandbox Code Playgroud)

等等...是否有一种更有效的方法将所有"Y/N"字段(POOL,WATERFRONT)组合在一起,也许是使用数组,然后可以替换值?我将如何回应每个领域?

Joh*_*nde 6

foreach(array('POOL', 'WATERFRONT') as $field) {
    echo str_replace(array('Yes', 'No'), array('Y', 'N'), $row[$field]);
}
Run Code Online (Sandbox Code Playgroud)

这只是将每个Y/N字段的数组键放入一个数组中,然后循环遍历它.在它使用的循环内部,str_replace()但利用其传递数值的数据交换和替换它们的能力:

如果搜索和替换是数组,则str_replace()从每个数组中获取一个值,并使用它们来搜索和替换主题.如果replace的值小于search,则空字符串将用于其余的替换值.如果search是一个数组而replace是一个字符串,那么这个替换字符串将用于搜索的每个值.

  • 你从我的嘴/手指中取出了(又名:打字).好答案!上投... (2认同)