如何使用php脚本提取xml标签中字符串的第一部分

时间:2019-06-15 14:18:14

标签: php xml

我有一个php脚本,该脚本将现有的xml文件转换为与我的Joomla组件兼容的新xml文件格式。直到源xml提供程序将2封电子邮件添加到电子邮件标签(我们的系统仅允许导入其中的一封电子邮件)之前,它一直工作良好。

电子邮件标签当前如下所示:

<emai>jon@abc.com, stan@ghj.com</email>

我需要脚本仅使用第一封电子邮件,但是我不确定如何实现。我在这里找到了一些代码示例,但无法在脚本中使用它们。这是脚本中收集电子邮件值的部分:

 //agent
                    if(isset($business->listingAgent)){

                    if(is_array($business->listingAgent))
                        $agent = $business->listingAgent[0];
                    else
                        $agent = $business->listingAgent;
                    if(isset($agent->name))
                        $agent_name = $agent->name;
                    if(isset($agent->email)){
                        if(strpos($agent->email,',')!==false){
                            $agent_email = explode(',',$agent->email)[0];
                        }elseif(strpos($agent->email,';')!==false){
                            $agent_email = explode(';',$agent->email)[0];
                        }else{
                            $agent_email = $agent->email;
                        }

我希望它仅使用第一封电子邮件。相反,它尝试同时导入两者,从而导致失败。

我发现了与substring-before有关的东西,但是当我尝试将其包含在代码中时,它产生了以下错误:

  

在调用未定义函数before()

我添加的代码(在上面其余代码之前的// Agent下:

$agent_email = substring-before($agent_email, ',');

有人知道我在做什么错吗?

致谢

0 个答案:

没有答案