-1

我有一个变量

$message_days = 45; 62; 35;

我想用 terminator 爆炸变量;。怎么炸?

4

4 回答 4

2

首先,您不能将这样的 INT 值分配给单个变量

$message_days = 45; 62; 35;

因为$message_days只返回45而不是整体。你的第二件事explode()是用来逐个字符串分割一个字符串。所以你必须使这些值的字符串像,假设$_POST['text_field'] = 45; 62; 35;

$message_days = "45; 62; 35;";
或者
$message_days = settype( $_POST["text_field"], "string")

然后使用explode()函数。

更新:

正如您所说,您需要数组中的 int 值,然后使用此代码返回数组中的整数值

//$message_days = "45;62;35";
$message_days = settype( $_POST["text_field"], "string")

OR

$message_days = "'" . $_POST["text_field"] . "'";

$output = array_map('intval', explode(';', $message_days));

var_dump( $output );

http://codepad.org/LghB9tng

于 2013-10-23T10:59:10.707 回答
1

如果你的变量是一个字符串,你可以这样做

$message_days = '45; 62; 35;';
$arr = explode(';',$message_days);
print_r($arr);

如果您将其用作整数,则不能这样做。 $message_days = 45; 62; 35; 如果你回显它的值 $message_days 将是 45。因为$message_days;如果你爆炸它是 45,你将在数组中只得到一个值,即 45。

于 2013-10-23T10:53:49.500 回答
0

如果 $message_days 作为您的输入是字符串,请使用

$result = explode( ';', $message_days); 

按照建议将其爆炸。

然后迭代结果并将每个字符串转换为整数,如下所示:

foreach( $result as $position => $value )
{
 $result[$pos] = intval( $value);
}

你的结果是一个整数数组。

于 2013-10-23T11:07:57.550 回答
0
<?php
$message_days = "45;62;35";
$output = explode(";",$message_days);
print_r($output);
?>
于 2013-10-23T10:56:01.403 回答