2012-04-07 3 views
1

У меня есть строка данных, которая содержит числа и разбиения на '-', sth вот так: 2012-421-020-120407 Теперь я хочу сгенерировать цифру четности (0 или 1) в конец этой строки в моем php-коде. Но Я понятия не имею, как это сделать.Создать цифру четности в php

Заранее спасибо

ответ

1

Если у вас есть номера, использовать %, чтобы определить, является ли число делится на 2. Если да, то это даже. Если это не так, это странно. Соберите свой паритет из этого результата.

$numbers = "2012-421-020-120407"; 
$numbers_array = explode("-", $numbers); 

print_r($numbers_array); // [0]=>2012 [1]=>421 [2]=>020 [3]=>120407 

foreach ($numbers_array as &$number) 
    $number .= ($number % 2 == 0) ? 0 : 1 ; 

print_r($numbers_array); // [0]=>20120 [1]=>4211 [2]=>0200 [3]=>1204071 

Если вы хотите, соотношение суммы чисел, вы можете попробовать следующее:

$numbers = "2012-421-020-120407"; 
preg_match_all("/[0-9]+/", $numbers, $matches); 

$parity = array_sum($matches[0]) % 2 ; 

echo $parity; // Outputs 0 or 1 
+0

первого спасибо за ваш ответ, вы имеете в виду я использую эти цифры: 2012-421-020- 120407? как использовать% для определения здесь? возможно, я должен сначала найти сумму? Я не знаю! очистите его. Спасибо –

+0

@MattStone Вы хотите найти соотношение суммы всех чисел? Или каждый набор номеров индивидуально? Выше, я покажу вам, как выполнить это для каждого набора чисел, приводящих к взорванной строке. – Sampson

+0

Он говорит о паритете, поэтому я полагаю, что это должно быть только одно, что их сумма yp – unsym

Смежные вопросы