php 替换为SELECT GROUP_CONCAT中的数组

mqkwyuun  于 2023-01-24  发布在  PHP
关注(0)|答案(1)|浏览(97)

我正在尝试执行str_replace,但没有成功。由于某种原因,来自MySql的数据在str_replace函数中不起作用。
用于获取将用于替换字符串的所有字符串的代码:

$aspas = "'";
$sql2 = '
SELECT
    GROUP_CONCAT(
        DISTINCT CONCAT("'.$aspas.'", prefixo, "-'.$aspas.','.$aspas.'-", posfixo, "'.$aspas.'") 
    ) AS prefixo_posfixo
FROM
    profissionais
';

$stm2 = $pdo->prepare($sql2);
$stm2->execute();
$resultado = $stm2->fetch();

无错误地生成以下输出:

echo $resultado[0] >> 'dr-','-advogado','dra-','-advogada'

但是当我尝试在str_replace函数中插入:

$newstring = str_replace([$resultado[0]], '', 'dra-flavia-barao-advogada');
echo newstring >> dra-flavia-barao-advogada

如您所见,结果保持不变,它不替换字符串;(
我认为这是关于将数组转换为字符串的东西,但$resultado[0]不是数组格式,所以我不能内爆...
你知道我做错了什么吗?

euoag5mw

euoag5mw1#

我忘了发布之前的解决方案,有:

//SELECT THE STRINGS TO BE USED TO REMOVE FUNCTION
$sql2 = '
SELECT
    GROUP_CONCAT(
        DISTINCT CONCAT(prefixo, "-,-",posfixo) 
    ) AS prefixo_posfixo
FROM
    profissionais
';

$stm2 = $pdo->prepare($sql2);
$stm2->execute();
$prefixo_posfixo = $stm2->fetch();

//REPLACE / REMOVE THE STRINGS
$newstring = str_replace(explode(",", $prefixo_posfixo[0]), '', 'dra-flavia-barao-advogada');

//PRODUCES THE OUTPUT
flavia-barao

相关问题