phpのコヒーレンスとrubyの関数の比較
詳細
好奇心を満たすためだけに、確かに面白いです.
本文は主に2つの言語の機能特徴を比較した.yieldというキーワードは、両方の言語にあります.
先にrubyコードを
phpコードを追加
最終的な結果は
参照
into Coroutine
num is 1
into Coroutine
num is 7
into Coroutine
num is 19
into Coroutine
num is 43
into Coroutine
num is 91
好奇心を満たすためだけに、確かに面白いです.
本文は主に2つの言語の機能特徴を比較した.yieldというキーワードは、両方の言語にあります.
先にrubyコードを
# ruby
def myloop(a, b)
while true
print "into Coroutine( )
"
yield a, b
end
end
num = 1
myloop(2, 3) do |aa,bb|
puts "num is #{num}"
num = 2 * num + aa + bb
break if num > 100
end
phpコードを追加
"; // 。php
while (true) {
if ( $fun-?>valid() ) {
echo "into Coroutine( )
";
$fun->current() ;
}else {
break;
}
$fun->next();
}
};
$num = 1;
myloop(2, 3, function ($a, $b) use ($num) {
//
while (true) {
echo "num is {$num}
";
$num = 2 * $num + $a +$b ;
if ($num > 100) break;
yield ;
}
});
最終的な結果は
参照
into Coroutine
num is 1
into Coroutine
num is 7
into Coroutine
num is 19
into Coroutine
num is 43
into Coroutine
num is 91