在PHP中将单词列表转换为数组


Convert list of words to array in PHP

这可能只是一个简单的问题,但我对PHP不是很熟悉。

我在这里有一个单词列表,用<br/>标签,例如:

<div id="list">
    gmail.com<br />
    yahoo.com<br />
    yahoo.co.jp
</div>

而且,我想把它转换成一个数组中的值列表,看起来像这个

$acceptedDomains = array('gmail.com', 'yahoo.com', 'yahoo.co.jp');

我该如何实现此输出?

我实际上需要这个来检查域电子邮件,下面是功能的工作原理:

            $acceptedDomains = array('gmail.com', 'yahoo.com', 'yahoo.co.jp');
            $email = $current_user->user_email;
            if(in_array(substr($email, strrpos($email, '@') + 1), $acceptedDomains)) {
                //if user is a member, show form.
                echo $email . " is valid" . "<div>" . CFS()->get('mo_email_list') . "</div>";
            }

我想将$acceptedDomains的值替换为id="list"下列出的值

尝试以下代码:

<?php
$input='<div id="list">gmail.com<br />yahoo.com<br />yahoo.co.jp</div>';
$acceptedDomains = explode("<br />", strip_tags($input, "<br>"));
print_r($acceptedDomains);
?>

输出:

数组([0]=>gmail.com[1]=>yahoo.com[2]=>yahoo.co.jp)

试试这个

<?php
$input='<div id="list">
    gmail.com<br />
    yahoo.com<br />
    yahoo.co.jp
</div>';
$newStr=strip_tags($input, '<br>');
$acceptedDomains=explode("<br>",$newStr);
var_dump($acceptedDomains);
?>

Above Code将返回输出根据您的需要):

试试这个:

<?php
$input='<div id="list">
          gmail.com<br />
          yahoo.com<br />
          yahoo.co.jp
        </div>';
$acceptedDomains=explode("<br />", strip_tags($input, "<br>"));
print_r($acceptedDomains);
?>

您可以尝试以下代码:

<?php
$input_string = '<div id="list">gmail.com<br />yahoo.com<br />yahoo.co.jp</div>';
$strip_tag_str = strip_tags($input_string, "<br>");
echo "<pre>";
print_r(explode("<br />", $strip_tag_str));
echo "</pre>";
?>

以上代码的输出:

Array
(
    [0] => gmail.com
    [1] => yahoo.com
    [2] => yahoo.co.jp
)

简单操作:

<?php $acceptedDomains = explode("<br />", CFS()->get('mo_email_list')); ?>

或者,如果<div id="list"></div>也是CFS()->get('mo_email_list')输出的一部分,则尝试:

<?php $acceptedDomains = explode("<br />", strip_tags(CFS()->get('mo_email_list'),"<br>")); ?>

请尝试以下代码。

$data = '<div id="list">
    gmail.com<br />
    yahoo.com<br />
    yahoo.co.jp
</div>';
$newdatavar=strip_tags($input, '<br />');
$explodevar=explode("<br />",$newdatavar);
echo "<pre>";
print_r($explodevar);