PHP处理表单提交的文本域内容

橙子与柠檬 / 2024-09-22 / 原文

/**
 * textarea内容,替换空格和换行为 <br/>
 * @param string $str 字符串
 * @return string
 */
function my_encode_textarea_content(string $str): string
{
    $pattern = array(
        '/ /',   //半角下空格
        '/ /',   //全角下空格
        '/\r\n/',//window 下换行符
        '/\n/',  //Linux && Unix 下换行符
    );
    $replace = array(' ', ' ', '<br/>', '<br/>');
    return preg_replace($pattern, $replace, $str);
}

/**
 * 反替换 <br/>为空格和换行,让textarea可识别
 * @param string $str 字符串
 * @return string
 */
function my_decode_textarea_content(string $str): string
{
    return preg_replace("/<br\\s*?\/??>/i", "
", $str);
}