From 09b8483ed67d3b85e983ef86c34260081975e1cb Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 2 May 2025 06:47:07 +0900 Subject: fix(blog/nuldoc): remove unnecessary "language" attribute --- .../phperkaigi-2023-unused-token-quiz-1/index.html | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'vhosts/blog/public/posts/2022-10-23/phperkaigi-2023-unused-token-quiz-1') diff --git a/vhosts/blog/public/posts/2022-10-23/phperkaigi-2023-unused-token-quiz-1/index.html b/vhosts/blog/public/posts/2022-10-23/phperkaigi-2023-unused-token-quiz-1/index.html index 3d84fe35..f5b4922c 100644 --- a/vhosts/blog/public/posts/2022-10-23/phperkaigi-2023-unused-token-quiz-1/index.html +++ b/vhosts/blog/public/posts/2022-10-23/phperkaigi-2023-unused-token-quiz-1/index.html @@ -80,7 +80,7 @@

注意: これはボツ問なので、得られたトークンを PHPerKaigi で入力してもポイントにはならない。

-
+
<?php
 
 = $argv[1] ?? null;
@@ -109,14 +109,14 @@
             

ソースを見るとわかるとおり、$argv[1] を参照している。 それを なる変数に代入しているので、円周率を渡してみる。

-
+
$ php Q.php 3.14
 Failed.

失敗してしまった。精度を上げてみる。

-
+
$ php Q.php 3.1415
 Failed.
@@ -126,7 +126,7 @@

最初にトークンが得られるのは、小数点以下 16 桁目まで入力したときで、こうなる。

-
+
$ php Q.php 3.1415926535897932
 Token: #YO
@@ -139,7 +139,7 @@

短いので頭から追っていく。

-
+
= $argv[1] ?? null;
 if ($π === null) {
   exit('No input.');
@@ -152,7 +152,7 @@
             

入力のバリデーション部分。数値のみ受け付ける。

-
+
$s = implode(array_map(chr(...), str_split($π, 2)));

@@ -161,13 +161,13 @@

例えば、'656667' だったとすると、 656667 に対応した 'A''B''C' へと変換され、'ABC' になる。

-
+
= '656667';
 $s = implode(array_map(chr(...), str_split($π, 2)));
 echo $s;
 // => ABC
-
+
preg_match('/(\x23.+?) /', $s, $m);
 $t = $m[1] ?? '';
@@ -177,7 +177,7 @@

なお、# を直接書いていないのは、/#.+?) / と書くと、 #.+?) という意図せぬトークンが登録されてしまうからである。

-
+
if (md5($t) === '056e831a4146bf123e8ea16613303d2e') {
   echo "Token: {$t}\n";
 } else {
-- 
cgit v1.2.3-70-g09d2