Skip to content

Commit 7a4130c

Browse files
committed
README.md updated
1 parent 075b0a6 commit 7a4130c

File tree

1 file changed

+65
-18
lines changed

1 file changed

+65
-18
lines changed

README.md

Lines changed: 65 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
![Imgur](https://i.imgur.com/Yrywt79.jpg)
22

3-
4-
53
# Description
64

75
### This package helps you create non-guessable and non-simple numeric codes.
@@ -11,22 +9,22 @@
119
### The numbers created by this package meet the following conditions:
1210

1311
- The repetition of each digit in the whole number cannot be more than twice.
14-
12+
1513
- For example, the number `23242` is not allowed because the digit `2` appears three times.
1614

1715
- Only one digit can appear twice in the whole number; the rest of the digits cannot be repeated.
18-
16+
1917
- For example, the number `2332` is not allowed.
2018

2119
- Only two consecutive digits are allowed.
22-
20+
2321
- For example, the numbers `232` or `234` are not allowed, but `235` is allowed.
2422

2523
- Consecutive numbers next to each other can appear only once in the whole number.
26-
24+
2725
- For example, in the number `2354`, `2` and `3` are next to each other and `4` and `5` are next to each other, which is not allowed!
2826

29-
---
27+
----
3028

3129
# How to Use
3230

@@ -58,6 +56,34 @@ The output will be something like:
5856
5957
----
6058

59+
# Speed ​​Test
60+
61+
#### To test the execution time, create a php file and run this code:
62+
63+
This test generates 1000 numeric codes without failure. (100,000 have also been tested)
64+
65+
```php
66+
<?php
67+
68+
require_once "./vendor/autoload.php";
69+
70+
use AmMokhtari\NumericCode\NumericCode;
71+
72+
$start = microtime(true);
73+
for ($i = 0; $i < 1_000; $i++){
74+
try {
75+
NumericCode::generate(8); // Generate an 8-digit code
76+
} catch (Exception $e) {
77+
echo "Error: " . $e->getMessage() . " <br>";
78+
}
79+
}
80+
$end = microtime(true);
81+
$executionTime = $end - $start;
82+
echo "Execution Time: " . number_format($executionTime, 6) . " seconds <br>";
83+
```
84+
85+
---
86+
6187
----
6288

6389
----
@@ -70,27 +96,20 @@ The output will be something like:
7096

7197
### اعدادی که توسط این پکیج ساخته میشوند شرط های زیر را پاس میکنند:
7298

73-
7499
- تعداد تکرار هر رقم در کل عدد نمیتواند بیش از دو مرتبه باشد.
75-
100+
76101
- مثلا عدد `۲۳۲۴۲` چون سه مرتبه عدد `۲` ظاهر شده مجاز نیست.
77102

78-
79-
80103
- فقط یک رقم میتواند در کل عدد دو مرتبه ظاهر شود و باقی ارقام مجاز به تکرار نیستند.
81-
104+
82105
- مثلا عدد `۲۳۳۲` مجاز نیست.
83106

84-
85-
86107
- فقط دو رقم متوالی در کنار هم مجاز هستند.
87-
108+
88109
- مثلا عدد `۲۳۲` یا `۲۳۴` مجاز نیستند ولی `۲۳۵` مجاز است
89110

90-
91-
92111
- اعداد متوالی در کنار هم فقط یکبار میتوانند در کل عدد ظاهر شوند
93-
112+
94113
- مثلا، در عدد `۲۳۵۴` چون `۲` و `۳` کنار هم و `۴` و `۵` کنار یکدیگر هستند و مجاز نیست!
95114

96115
---
@@ -122,3 +141,31 @@ $string_code = NumericCode::generate(4);
122141
خروجی چیزی شبیه به این خواهد بود:
123142

124143
> 3198
144+
145+
---
146+
147+
# تست سرعت
148+
149+
#### برای تست مدت زمان اجرا، یک فایل php ایجاد کنید و این کد را اجرا کنید:
150+
151+
این تست 1000 کد عددی را بدون شکست تولید می کند. (100000 هم تست شده)
152+
153+
```php
154+
<?php
155+
156+
require_once "./vendor/autoload.php";
157+
158+
use AmMokhtari\NumericCode\NumericCode;
159+
160+
$start = microtime(true);
161+
for ($i = 0; $i < 1_000; $i++){
162+
try {
163+
NumericCode::generate(8); // Generate an 8-digit code
164+
} catch (Exception $e) {
165+
echo "Error: " . $e->getMessage() . " <br>";
166+
}
167+
}
168+
$end = microtime(true);
169+
$executionTime = $end - $start;
170+
echo "Execution Time: " . number_format($executionTime, 6) . " seconds <br>";
171+
```

0 commit comments

Comments
 (0)