私は変数を持っています
$message_days = 45; 62; 35;
変数を terminator で分解したい;
。爆発させる方法は?
まず、単一の変数にこのような INT 値を割り当てることはできません
$message_days = 45; 62; 35;
全体$message_days
ではなくのみを返すためです。45
そして、あなたがexplode()
機能する2番目のことは、文字列を文字列ごとに分割するために使用されます。したがって、これらの値の文字列を次のようにする必要があります。$_POST['text_field'] = 45; 62; 35;
$message_days = "45; 62; 35;";
また
$message_days = settype( $_POST["text_field"], "string")
次に、explode()関数を使用します。
//$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 );
変数が文字列の場合、次のようにすることができます
$message_days = '45; 62; 35;';
$arr = explode(';',$message_days);
print_r($arr);
それを整数として使用している場合は、それを行うことはできません。
$message_days = 45; 62; 35;
の値は、
$message_days
echo の場合は 45 になります。45で$message_days;
あるため、分解すると、配列内で 45 になる値が 1 つだけ取得されます。
入力としての $message_days が文字列の場合、使用します
$result = explode( ';', $message_days);
提案されているように、それを爆発させます。
次に、結果を繰り返し、各文字列を次のように整数に変換します。
foreach( $result as $position => $value )
{
$result[$pos] = intval( $value);
}
結果は整数の配列です。