【问题标题】:How can I add apostrophe inside an array from a form's textarea如何从表单的 textarea 在数组中添加撇号
【发布时间】:2011-10-22 20:55:14
【问题描述】:

以下代码可以正常工作。

$numbers = array('0018182225252','0012524578125','0015458525458');
$message = $_POST['message'];
$pnum = $numbers;

但是,鉴于这些值将来自每行的文本区域,我如何才能实现类似的代码。

0018182225252
0012524578125
0015458525458

<textarea rows="1" cols="1" id="numbr" name="numbr" wrap="physical"></textarea>

我已经用explode 尝试了我的运气,但我认为我与撇号有冲突,所以它不起作用..

$num1 = $_POST['numbr'];
$message = $_POST['message'];
$pnum = explode(",", $num1);
$numbers = array($pnum);

运气不好。提前谢谢大家!

【问题讨论】:

  • 如果数字是每行一个,为什么使用逗号作为分隔符而不是\n
  • 你好,我假设使用逗号会给我一个结果 $var = array('line1','line2');这是我需要的代码工作。有什么想法吗? TIA!

标签: php arrays trim explode


【解决方案1】:

explode() 通过从给定分隔符中拆分字符串来工作。例如,如果您有一个字符串$s = 'a,b,c',使用explode( ',', $s ) 会得到array( 'a', 'b', 'c' )。如果你有字符串$s = 'a;b;c',那么你会使用explode( ';', $s )等等。

因此,如果您有一串由换行符分隔的数字,您将使用换行符 (\n) 作为分隔符:

$numbers = explode( "\n", $_POST[ 'numbr' ] );

请注意,explode() 返回一个数组,因此您不必在之后将结果放入另一个数组中。

【讨论】:

    【解决方案2】:

    替换

    explode(",", $num1);
    
    with
    
    explode("/r", $num1);
    

    $numbers = $pnum; (删除数组()

    【讨论】:

    • 感谢脾气暴躁的回复。我能够看到结果,但是我需要将每个值的撇号放在数组中,当前结果是这样的: Array ( [0] => 011639178717229 011639306237777 ) 我需要像上面的代码一样拥有它.. '0018182225252' ,'0012524578125','0015458525458' 因为它是唯一被接受的格式..有什么想法吗?
    • 你需要\n 而不是/r
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-27
    • 2017-10-04
    • 2015-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多