가장 간단한 지정하십시오. 알아보기 위한 가장 기본적인 방법은 여러 / 가변입니다 홀수입니다 심지어 미리? 그것은 무관하지 모드용?
하지만 몇 스크립트에만 i& # 39, ve 했다. 구글이 제공하는 isn&, t # 39 이 순간.
당신이 옳았어요 있는 곳이라는 생각을 모드용 시작할 수 있었다. 이 경우 true, false 로 설정하면 숫자 '는' $ 표현식에서는 반환되므로 홀수입니다 있는 것이다.
$number % 2 == 0
[, PHP&l /sup> sup> integer<;;] 모든 작동됨 (http://php.net/manual/en/language.types.integer.php) 값을 http://schmidt. devlib. 아니라 [, , 산술, sup> Operators< PHP&l /sup>] (http://php.net/manual/en/language.operators.arithmetic.php).
$number = 20;
if ($number % 2 == 0) {
print "It's even";
}
출력: >. # 39 의 it& 있다.
또 다른 옵션은 마지막 숫자가 짝수 여부를 확인할 수 있다.
$value = "1024";// A Number
$even = array(0, 2, 4, 6, 8);
if(in_array(substr($value, -1),$even)){
// Even Number
}else{
// Odd Number
}
대신 사용할 수 있도록 빠른 ',' array_search 이세 () '또는':
$value = "1024";// A Number
$even = array(0 => 1, 2 => 1, 4 => 1, 6 => 1, 8 => 1);
if(isset($even[substr($value, -1)]){
// Even Number
}else{
// Odd Number
}
또는 이를 위해 더 많은 것을 더 빨리 ( 비츠 '모드용 작동자' 에 회 ):
$even = array(0, 2, 4, 6, 8);
if(in_array(substr($number, -1),$even)){
// Even Number
}else{
// Odd Number
}
다음은 시간 테스트 로 대비성 내 발견사항.
내가 조금 사이에 있는 '와', '테스트, com/downloads/global/corporate/iar/esg_prosupport. is_int & 작동자, mod, mod, 이어' 가장 빠른 & -) 에서 가까운 모습이다. 'is_int' 는 거의 4 배 이상 느린 모드용.
난 다음 코드를 사용하는 테스트 목적으로: php <,?
$number = 13;
$before = microtime(true);
for ($i=0; $i<100000; $i++) {
$test = ($number%2?true:false);
}
$after = microtime(true);
echo $after-$before." seconds mod<br>";
$before = microtime(true);
for ($i=0; $i<100000; $i++) {
$test = (!is_int($number/2)?true:false);
}
$after = microtime(true);
echo $after-$before." seconds is_int<br>";
$before = microtime(true);
for ($i=0; $i<100000; $i++) {
$test = ($number&1?true:false);
}
$after = microtime(true);
echo $after-$before." seconds & operator<br>";
결과는 내가 맡을게 우린사이가 일관됨. # 39 의 here& 예제:
0.041879177093506 seconds mod
0.15969395637512 seconds is_int
0.044223070144653 seconds & operator
PHP 는 자동으로 변환 및 빈 문자열을 nulll 제로. 따라서 이러한 함께 잘 알려져 있다. 그리하여 코드를 것입니다.
$number % 2 == 0 or !($number & 1)
& # 39, & # 39, 값이 있는 = $ 번호 또는 $ 번호 = null 이로 인해 참. 그러므로 나는 이 테스트 다소 확장됨:
function testEven($pArg){
if(is_int($pArg) === true){
$p = ($pArg % 2);
if($p== 0){
print "The input '".$pArg."' is even.<br>";
}else{
print "The input '".$pArg."' is odd.<br>";
}
}else{
print "The input '".$pArg."' is not a number.<br>";
}
}
The print is there for testing purposes, hence in practice it becomes:
function testEven($pArg){
if(is_int($pArg)=== true){
return $pArg%2;
}
return false;
}
이 함수는 0, 1 의 경우 모든 홀수 번호 및 거짓 없는 경우, 심지어 숫자입니다. 난 항상 쓸 수 있도록 myself (및 다른 프로그래머들이) = true 또는 = false 알게 테스트는 의도한 대로.
내가 만들 수 있다는 전제 하에 엇회전식 이미 제공되고 있습니다. 내가 말 달러 원하는거요 증분됩니다 루프, 이 작품을 통해 가져다줄래요 대표 질의입니다.
$row_pos = ($i & 1) ? 'odd' : 'even';
그래서 우리는 무엇을 잘 하는 것, 즉 $ i 는 이 성명은 쿼리합니다 따라 그 진실 혹은 거짓 여부를 결정할 것이라고 반환되었습니다 홀수입니다 된다. 이 값을 반환되었습니다 lionbridge 변수 $ row_pos 채웁니다
내 놓는 것이 포리치 루프 내부에서 사용하기 때문에, 이것은 매우 효율적인 데릭쉐퍼드와 직전 한 라이너 전달자로써 해당 클래스 이름, 이는 내가 나를 위해 이미 엇회전식 id& # 39 의 활용할 수 있도록 늦게 프로그램였어 이것은 간단한 예로, 이 부분은 내가 어떻게 활용할 예정이다.
<div class='row-{$row_pos}'> random data <div>
그래서 내가 이렇게 하면, 심지어 각 행에 대한 올바른 클래스 및 스트라이프합니다 홀수입니다 클래스뿐만 내 인쇄되었습니다 결과 페이지를 아래로 사용할 수 있습니다.
내가 사용하는 id 는 전체 예제에서와 뭐한테 기록하십시오 엇회전식 적용되어 및 클래스에는 내 홀수입니다 / 짝수 결과: 적용되어.:
$i=0;
foreach ($a as $k => $v) {
$row_pos = ($i & 1) ? 'odd' : 'even';
echo "<div id='A{$i}' class='row-{$row_pos}'>{$v['f_name']} {$v['l_name']} - {$v['amount']} - {$v['date']}</div>\n";
$i++;
}
요약하자면, 따라서 나를 아주 간단하게 만들 수 있는 방법이 예쁜 테이블.
//for numbers n [0,1,2,3,4....]
if((n+2)%2==1) {
//odd
}else {
//even
}
Zero 는 짝수. 즉, 정수 또는 그 품질을 이 패리티와 기술입니까 odd 는 수도 있다. 가장 간단한 방법은 있다는 사실을 확인할 수 있다 (zero) 은 물론이고, 정의를 부응합니다 " even": 정보기술 (it) 은 정수 0 & # 2, 특히 배수인지 215. 2. 그 결과 모든 있는 특성 파악, 제로 공유하여며 짝수: 0 은 2, 0 은 양쪽에 의해 수 있고, 0 은 양의 정수 (0) 에 의해 숫자임 홀수입니다 자체에 두 개의 동등한 세트 분할됩니다 일련의 0 객체를 사용할 수 있습니다. http://en.wikipedia.org/wiki/Parity_of_zero 에서
이 번호는 홀수입니다 또는 심지어 PHP 코드 있는지 확인합니다. 예를 들어 'a' 는 '2' 와 '$ 확보하십시오 수 있다. 그 후 a '가치' $ 변경하십시오 홀수입니다 하는 경우
$a=2;
if($a %2 == 0){
echo "<h3>This Number is <b>$a</b> Even</h3>";
}else{
echo "<h3>This Number is <b>$a</b> Odd</h3>";
}
$before = microtime(true);
$n = 1000;
$numbers = range(1,$n);
$cube_numbers = array_map('cube',$numbers);
function cube($n){
$msg ='even';
if($n%2 !=0){
$msg = 'odd';
}
return "The Number is $n is ".$msg;
}
foreach($cube_numbers as $cube){
echo $cube . "<br/>";
}
$after = microtime(true);
echo $after-$before. 'seconds';
이 번호요 시도하시겠습니까 # 로 입력 필드를
<?php
//checking even and odd
echo '<form action="" method="post">';
echo "<input type='text' name='num'>\n";
echo "<button type='submit' name='submit'>Check</button>\n";
echo "</form>";
$num = 0;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["num"])) {
$numErr = "<span style ='color: red;'>Number is required.</span>";
echo $numErr;
die();
} else {
$num = $_POST["num"];
}
$even = ($num % 2 == 0);
$odd = ($num % 2 != 0);
if ($num > 0){
if($even){
echo "Number is even.";
} else {
echo "Number is odd.";
}
} else {
echo "Not a number.";
}
}
?>