English | العربية | বাংলা | Bosanski | Deutsch | Español | Français | हिन्दी | Italiano | 日本語 | 한국어 | मराठी | Português | Русский | Kiswahili | தமிழ் | తెలుగు | Türkçe | اردو | Tiếng Việt | 中文
ಪರಿಚಯ
Faker Storage ಒಂದು ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯಿರುವ PHP ಪ್ಯಾಕೇಜ್ ಆಗಿದ್ದು, ಬಳಕೆಯ ಕೃತಿಜನಿತ ಡೇಟಾ ಫೈಲ್ಗಳ ದೊಡ್ಡ ಪ್ರಮಾಣವನ್ನು ಸಮಾನ್ವಿತವಾಗಿ ಉತ್ಪಾದಿಸಲು ಮತ್ತು almacenar ಮಾಡಲು ವಿನ್ಯಾಸಗೊಳ್ಳಲಾಗಿದೆ. ಸಮಾನಾಂತರದಲ್ಲಿ ಕಾರ್ಯ ನಿರ್ವಹಿಸಲು, ಇದು Swoole ಅಥವಾ PCNTL ಅನ್ನು ಬಳಸುತ್ತದೆ, ಸಾವಿರಾರು ಫೈಲ್ಗಳನ್ನು ಸಮಾನವಾಗಿ ಉತ್ಪಾದಿಸಲು, ಇದು ಲೋಡ್ ಪರಿಕ್ಷೆಗಳು, ಅಭಿವೃದ್ಧಿ ಪರಿಸರಗಳು ಮತ್ತು ಸ್ಟೋರೇಜ್ ಸಿಸ್ಟಮ್ ಬೋಡ್ ಮಾದರಿಗಾಗಿ ಆದ್ಯವಾಗಿರುವುದು.
ಈ ಪ್ಯಾಕೇಜ್ ಚಿತ್ರಗಳು (PNG, JPG, GIF, BMP, WEBP, AVIF), ಪಠ್ಯ ಫೈಲ್ಗಳು, CSV ಫೈಲ್ಗಳು, ಬೈನರಿ ಡೇಟಾ ಮತ್ತು RFC822 ಹೊಂದಿಕೆಯಾದ ಇಮೇಲ್ಗಳನ್ನು ಒಳಗೊಂಡಂತಹ ವಿವಿಧ ಫೈಲ್ ಪ್ರকারಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ಸರಳ API ಅನ್ನು ಒದಗಿಸುತ್ತದೆ. ಪ್ರತಿಯೊಂದು ಜನರೇಟರ್ ಅನ್ನು ಬೀಜ ಹಾಕಿದಾಗ ನಿರ್ಧಿಷ್ಟವಾದ ಔಟ್ಪುಟ್ ಅನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ, ಪರಿಸರಗಳಲ್ಲಿ ಪುನರಾವೃತ್ತವಾಗುವಂತಾಗುತ್ತದೆ.
ಪ್ರಮುಖ ವೈಶಿಷ್ಟ್ಯಗಳು
-
ಉತ್ತರದಕ್ಷಿಣ ಕಾರ್ಯಕ್ಷಮತೆಯ ಸಮಾನಾಂತರ: ಸಮಾನಾಂತರ ಫೈಲ್ ಉತ್ಪಾದನೆಗಾಗಿ Swoole (coroutines) ಮತ್ತು PCNTL (ಪ್ರಕ್ರಿಯೆಯ ವಿಭಾಗ) ನಡುವಿನ ಸ್ವಯಂ-ಚಯನ
-
ಬಹು ಪೋಸ್ಟ್ ಜನರೇಟರ್ಗಳು: ಚಿತ್ರಗಳು, ಪಠ್ಯ, CSV, ಬೈನರಿ ಮತ್ತು ಇಮೇಲ್ ಫೈಲ್ಗಳಿಗೆ ನಿರ್ಮಿತ ಬೆಂಬಲ
-
ನಿರ್ಧಿಷ್ಟ ಔಟ್ಪುಟ್: ಬೀಜ ಆಧಾರಿತ ಉತ್ಪಾದನೆ ಪುನರಾವೃತ್ತವಾದ ಫಲಿತಾಂಶಗಳನ್ನು ಖಾತ್ರಿ
-
ಲಚನೀಯ ಸಂಗ್ರಹಣೆ: ಯಾವುದಾದರೂ ಲೀಗ್ ಫ್ಲಿಜ್ಸಿಸ್ಟಮ್ ಅಡಾಪ್ಟರ್ನ್ನು ಬಳಸುತ್ತದೆ (ಸ್ಥಳೀಯ, S3, ಇತ್ಯಾದಿ)
-
ಗುಣಾತ್ಮಕ ಫೈಲ್ ನಾಮಕರಣ: ಸಂಪೂರ್ಣ ನಿಯಂತ್ರಣದೊಂದಿಗೆ ಕ್ಲೋಸರ್ ಆಧಾರಿತ ಹೆಸರು ಉತ್ಪಾದನೆ
-
ಚಿತ್ರವನ್ನು ಬೆಂಬಲಿಸಿ: ವೈಯತ್ಯಾಕಾರದ ಮತ್ತು ದಬ್ಬನ ಹೊಂದಿಸುವಿಕೆಯನ್ನು ಹೊಂದಿರುವ ಬಹುವಿಧ ಫಾರ್ಮಾಟ್ಗಳು
-
ಇಮೇಲ್ ಉತ್ಪಾದನೆ: RFC822 ಹೊಂದಿಕೆಗೆ ಬಂದ ಇಮೇಲ್ಗಳು ಮತ್ತು MIME ಬೆಂಬಲವುಳ್ಳ ಆಯ್ಕೆಗಳನ್ನು ಹೊಂದಿವೆ
ಉದಾಹರಣೆ
use DefectiveCode\Faker\Faker;use League\Flysystem\Filesystem;use DefectiveCode\Faker\Generators\Png;use League\Flysystem\Local\LocalFilesystemAdapter; // 1000 PNG ಚಿತ್ರಗಳನ್ನು 10 ಸಮಾನಾಂತರ ಕಾರ್ಮಿಕರೊಂದಿಗೆ ಉತ್ಪಾದಿಸಿFaker::make(Png::class) ->width(800, 1920) ->height(600, 1080) ->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage'))) ->basePath('images') ->count(1000) ->concurrency(10) ->seed(42) ->generate(); // CSV ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸಿದ್ದುuse DefectiveCode\Faker\Generators\Csv; Faker::make(Csv::class) ->columns(5, 10) ->rows(100, 500) ->delimiter(',') ->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage'))) ->count(50) ->generate(); // ಅಟ್ಯಾಚ್ಮೆಂಟ್ ಹೊಂದಿರುವ ಇಮೇಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸಲಾಗಿದೆuse DefectiveCode\Faker\Generators\Email; Faker::make(Email::class) ->paragraphs(3, 5) ->sentences(2, 4) ->withAttachment(Png::class, 1, 3) ->toDisk(new Filesystem(new LocalFilesystemAdapter('/path/to/storage'))) ->count(100) ->generate();
ಸ್ಥಾಪನೆ
ಕೋಷ್ಟಕದ ಮೂಲಕ ಪ್ಯಾಕ್ ಅನ್ನು ಸ್ಥಾಪನೆ ಮಾಡಿರಿ:
composer require defectivecode/faker-storage
ಅಗತ್ಯವಿಲ್ಲ
- PHP >= 8.4
- ext-gd (ಚಿತ್ರ ಉತ್ಪಾದನೆಗಾಗಿ)
- ext-swoole (ಆಪ್ಷನವಿಲ್ಲ, ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯಿಗಾಗಿ)
- ext-pcntl (ದ್ವಂದ್ವಕ್ಕಾಗಿ)
ಆಯಶಕ್ತಿ ಕಂಪೊನೆಂಟ್ಗಳು
ಅತ್ಯುತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಗೆ, Swoole ವಿಸ್ತರಣೆ ಅನ್ನು ಸ್ಥಾಪಿಸು:
pecl install swoole
ಬಳಕೆ ಮಾಡಿದಾಗ, ಪ್ಯಾಕ್ ಲಭ್ಯವಾದಾಗ Swoole ಅನ್ನು ಸ್ವಯಂ ಬಳಸುತ್ತದೆ, ಇಲ್ಲವಾದರೆ PCNTL ಗೆ ಅಪಾಯದವು.
ಬಳಕೆ
ಮೂಲ ಕಾರ್ಯಪ್ರವೃತ್ತಿ
ಎಲ್ಲ ಜನರೇಟರ್ಗಳು ಹೀಗೆಯೇ ಅನುಸರಿಸುತ್ತವೆ:
- ಒಬ್ಬ Faker ಉದಾಹರಣೆಯನ್ನು ಜನರೇಟರ್ ಬಳಸಿ ಸೃಷ್ಟಿಸುವುದು
- ಜನರೇಟರ್ ಅನ್ನು ನಿರ್ವಹಿಸುವುದು (ಐಚ್ಛಿಕ)
- ಸಂಗ್ರಹಣೆ ಹಕ್ಕನ್ನು ಹೊಂದಿಸಲು
- ಸಮಾನಾಂತರ ಮತ್ತು ಎಣಿಕೆ ಸೆಟ್ಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು
- ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸುವುದು
use DefectiveCode\Faker\Faker;use League\Flysystem\Filesystem;use DefectiveCode\Faker\Generators\Text;use League\Flysystem\Local\LocalFilesystemAdapter; Faker::make(Text::class) ->paragraphs(5, 10) // ಜನರೇಟರ್-ಕೇಂದ್ರೀಕೃತ ಹಕ್ಕು ->toDisk(new Filesystem(new LocalFilesystemAdapter('/storage'))) ->basePath('documents') // ಫೈಲ್ಗಳು /storage/documents/ ನಲ್ಲಿ ಇರುತ್ತವೆ ->count(100) // 100 ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ->concurrency(4) // 4 ಕಾರ್ಮಿಕರನ್ನು ಬಳಸಲು ->seed(123) // ನಿರ್ಧಿಷ್ಟ ಔಟ್ಪುಟ್ಗಾಗಿ ->generate();
ಸಂಗ್ರಹಣೆ ಸಂಕಿರುಣೆ
Flysystem ಬಳಸುವುದು
Faker Storage ಸಂಗ್ರಹಣಾ ಅಭಾಜಿಕರ್ತೆಗೆ ಲೀಗ್ ಫ್ಲಿಜ್ಸಿಸ್ಟಮ್ ಅನ್ನು ಬಳಸುತ್ತದೆ:
use League\Flysystem\Filesystem;use League\Flysystem\Local\LocalFilesystemAdapter; // ಸ್ಥಳೀಯ ಸಂಗ್ರಹಣೆ$filesystem = new Filesystem(new LocalFilesystemAdapter('/path/to/storage')); Faker::make(Png::class) ->toDisk($filesystem) ->generate();
AWS S3 ಸಂಗ್ರಹಣೆ
use Aws\S3\S3Client;use League\Flysystem\Filesystem;use League\Flysystem\AwsS3V3\AwsS3V3Adapter; $client = new S3Client([ 'credentials' => [ 'key' => 'your-key', 'secret' => 'your-secret', ], 'region' => 'us-east-1', 'version' => 'latest',]); $adapter = new AwsS3V3Adapter($client, 'your-bucket-name');$filesystem = new Filesystem($adapter); Faker::make(Png::class) ->toDisk($filesystem) ->basePath('uploads/images') ->generate();
ಡಿಸ್ಕ್ ಆಯ್ಕೆಗಳು
ಫೈಲ್ಸಿಸ್ಟಮ್ ಅಡಾಪ್ಟರ್ಗೆ ಹೆಚ್ಚುವರಿ ಆಯ್ಕೆಗಳ ಪರಿಚಯಿಸಿ:
Faker::make(Png::class) ->toDisk($filesystem) ->diskOptions([ 'visibility' => 'public', 'ACL' => 'public-read', 'CacheControl' => 'max-age=31536000', ]) ->generate();
ಸಮಾನಾಂತರ ಸಂಕಿರುಣೆ
concurrency() ವಿಧಾನದಿಂದ ಸಮಾನಾಂತರ ಕಾರ್ಯನಿರ್ವಾಹಣೆಯನ್ನು ನಿಯಂತ್ರಿಸಲಾಗಿದೆ:
// 10 ಕಾರ್ಮಿಕ ತಂತುಗಳಿಗೆ/ಪ್ರಕ್ರಿಯೆಗಳಿಗೆ ಬಳಸುವುದುFaker::make(Png::class) ->concurrency(10) ->generate(); // Swoole-ಕಾಂಪ್ಯೂಟರ್: ನಿಖರವಾಗಿ ತಂತುಗಳು ಮತ್ತು ಪ್ರತಿ ತಂತುವನ್ನು ಪಟ್ಟಣಗೊಳಿಸಲು ಸೆಟ್ ಮಾಡಿFaker::make(Png::class) ->concurrency(threads: 4, coroutines: 8) // 4 ಕಾರ್ಮಿಕ, ಪ್ರತಿಯೊಬ್ಬರಲ್ಲಿಯ 8 ಸಮಾನಾಂತರಗಳು ->generate();
ಫೈಲ್ ನಾಮಕರಣ
ಡೀಫ್ನ ಮಾತ್ರಾ nomes
ಡೀಫ್ನಲ್ಲಿ, ಫೈಲ್ಗಳು UUID v4 ಅನ್ನು ಬಳಸಿಕೊಂಡು ಹೆಸರಿಡಲ್ಪಡುತ್ತವೆ:
// ಉತ್ಪಾದಿಸುತ್ತದೆ: e7f0a8d3-5c2b-4f9e-8a1d-3b4c5d6e7f8a.pngFaker::make(Png::class)->generate();
ಒಳನೋಟ ನೀಡುವ ಹೆಸರಿನ ಹೆಸರುಗಳು
use DefectiveCode\Faker\NameGenerator; // UUID ಆಧಾರಿತ (ಡೀಫ್)NameGenerator::setDefault('uuid'); // ಉತ್ಪಾದಿಸುತ್ತದೆ: e7f0a8d3-5c2b-4f9e-8a1d-3b4c5d6e7f8a.png // ಕ್ರಮಬದ್ಧ ಸಂಖ್ಯಾಮಾಲೆNameGenerator::setDefault('sequence'); // ಉತ್ಪಾದಿಸುತ್ತದೆ: 1.png, 2.png, 3.png, ...
ಅಂಗೀಕಾರದ ನಾಮಕರಣ
ಫೈಲ್ ಹೆಸರುಗಳನ್ನು ಹೊಂದಿಸಲು ಕ್ಲೋಸರ್ ಅನ್ನು ಒದಗಿಸಿ:
use DefectiveCode\Faker\NameGenerator; // ಕಸ್ಟಮ್ ಕ್ಲೋಸರ್Faker::make(Png::class) ->nameGenerator(function (int $seed, int $completedFiles, $generator) { return "custom-{$completedFiles}-{$seed}.png"; }) ->generate(); // ದಿನಾಂಕ ಆಧಾರಿತ ನಾಮಕರಣFaker::make(Png::class) ->nameGenerator(function (int $seed, int $completedFiles, $generator) { return date('Y/m/d') . "/image-{$completedFiles}.png"; }) ->generate();
ಪುನಾರಾವೃತ್ತಕ್ಕಾಗಿ ಬೀಜ ಹಾಕುವುದು
ಊರಿದಾಗ ಒಂದೇ ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ಬೀಜವನ್ನು ಸೆಟ್ ಮಾಡಿ:
Faker::make(Png::class) ->seed(42) ->count(10) ->generate();
ಪ್ರತಿ ಫೈಲ್ ವಿಭಿನ್ನ ನಿರ್ಧಿಷ್ಟ ಬೀಜವನ್ನು ಅವರ ಮೂಲ ಬೀಜ ಮತ್ತು ಫೈಲ್ ಸೂಚಿಗೆ ಸಂಬಂಧಿತವಾಗಿಸಿದ್ದರು.
ಜನರೇಟರ್ಗಳು
ಚಿತ್ರ ಜನರೇಟರ್ಗಳು
ಎಲ್ಲ ಇಮೇಜ್ ಜನರೇಟರ್ಗಳು ಆಯಾಮ ಮತ್ತು ಗುಣಮಟ್ಟ ಕಾನ್ಫಿಗರ್ಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ.
PNG
use DefectiveCode\Faker\Generators\Png; Faker::make(Png::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->withAlpha(true) // ಆಲ್ಫಾ/ಸ್ಪಷ್ಟತೆ ಚಾನೆಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
JPG
use DefectiveCode\Faker\Generators\Jpg; Faker::make(Jpg::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
GIF
use DefectiveCode\Faker\Generators\Gif; Faker::make(Gif::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->withAlpha(true) // ಆಲ್ಫಾ/ಸ್ಪಷ್ಟತೆ ಚಾನೆಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
BMP
use DefectiveCode\Faker\Generators\Bmp; Faker::make(Bmp::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
WEBP
use DefectiveCode\Faker\Generators\Webp; Faker::make(Webp::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->withAlpha(true) // ಆಲ್ಫಾ/ಸ್ಪಷ್ಟತೆ ಚಾನೆಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
AVIF
use DefectiveCode\Faker\Generators\Avif; Faker::make(Avif::class) ->width(800, 1920) // 800-1920px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಅಗಲ ->height(600, 1080) // 600-1080px ನಡುವಿನ ಯಾದೃಚ್ಛಿಕ ಎತ್ತರ ->withAlpha(true) // ಆಲ್ಫಾ/ಸ್ಪಷ್ಟತೆ ಚಾನೆಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ->grid(5) // ಐಚ್ಛಿಕ: 5x5 ಸಮ್ಮೆರಲ್ಲಾದ ಮಾದರಿಯನ್ನು ಉತ್ಪಾದಿಸಲು ->toDisk($filesystem) ->generate();
ಯಾದೃಚ್ಛಿಕ ಚಿತ್ರ
ಯಾದೃಚ್ಛಿಕ ಚಿತ್ರ ರೂಪವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ:
use DefectiveCode\Faker\Generators\RandomImage; Faker::make(RandomImage::class) ->width(800, 1920) ->height(600, 1080) ->withAlpha(false) // ಆಯ್ಕೆ: AVIF, BMP, GIF, JPEG, PNG, WEBP ->toDisk($filesystem) ->generate(); Faker::make(RandomImage::class) ->width(800, 1920) ->height(600, 1080) ->withAlpha(true) // ಆಯ್ಕೆ: AVIF, GIF, PNG, WEBP ->toDisk($filesystem) ->generate();
ಪಠ್ಯ ಜನರೇಟರ್
ಪ್ಯಾರಾಗ್ರಾಫ್ಗಳಿಂದ ನಿಯೋಜಿತ ಶುದ್ಧ ಪಠ್ಯ ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ:
use DefectiveCode\Faker\Generators\Text; Faker::make(Text::class) ->paragraphs(5, 10) // ಪ್ರತಿಯೊಂದು ಫೈಲ್ಗಾಗಿ 5-10 ಪ್ಯಾರಾಗ್ರಾಫ್ಗಳು ->sentences(3, 6) // ಪ್ರತಿಯೊಂದು ಪ್ಯಾರಾಗ್ರಾಫ್ಗೆ 3-6 ವಾಕ್ಯಗಳು ->toDisk($filesystem) ->generate();
ಕ್ಷೆಟ್ ಉದಾಹರಣೆ:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
CSV ಜನರೇಟರ್
ಯಾದೃಚಿಕ ಡೇಟಾವನ್ನು ಒಳಗೊಳ್ಳುವ CSV ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ:
use DefectiveCode\Faker\Generators\Csv; Faker::make(Csv::class) ->columns(5, 10) // 5-10 ಕಾಲಮ್ಗಳು ->rows(100, 500) // 100-500 ಸಾಲುಗಳು ->delimiter(',') // ಕಾಲಮ್ ಡೆಲಿIMITER ->enclosure('"') // ಹಕ್ಕು enclose ->escape('\\') // ಹೆರಳು ಚಿಹ್ನೆ ->eol("\n") // ಕೋರ್ಟು ಕೊನೆಯ ->toDisk($filesystem) ->generate();
ಕ್ಷೆಟ್ ಉದಾಹರಣೆ:
"John Doe","john@example.com","555-1234","New York","Engineer""Jane Smith","jane@example.com","555-5678","Los Angeles","Designer""Bob Johnson","bob@example.com","555-9012","Chicago","Manager"
ಬೈನರಿ ಜನರೇಟರ್
ಯಾದೃಚಿಕ ಬೈನರಿ ಡೇಟಾವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ:
use DefectiveCode\Faker\Generators\Binary; Faker::make(Binary::class) ->length(1024, 1048576) // 1KB - 1MB ->toDisk($filesystem) ->generate();
ಇಮೇಲ್ ಜನರೇಟರ್
RFC822 ಹೊಂದಿಕೆಯ ಇಮೇಲ್ ಫೈಲ್ಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ:
use DefectiveCode\Faker\Generators\Email; Faker::make(Email::class) ->paragraphs(3, 5) // ಇಮೇಲ್ ದೇಹದಲ್ಲಿ ಪ್ಯಾರಾಗ್ರಾಫ್ಗಳು ->sentences(2, 4) // ಪ್ರತಿಯೊಂದು ಪ್ಯಾರಾಗ್ರಾಫ್ಗೆ ವಾಕ್ಯಗಳು ->withAttachment(Png::class, 1, 3) // 1-3 PNG ಅಟ್ಯಾಚ್ಮೆಂಟ್ಗಳನ್ನು ಸೇರ್ಪಡೆ ಮಾಡಿ ->toDisk($filesystem) ->generate();
ಇಮೇಲ್ ಶೀರ್ಷಿಕೆಗಳು
-generated emails ಒಳಗೊಂಡವು:
To: ಯಾದೃಚಿಕ ಹೆಸರು ಮತ್ತು ಇಮೇಲ್From: ಯಾದೃಚಿಕ ಹೆಸರು ಮತ್ತು ಇಮೇಲ್Subject: ಯಾದೃಚಿಕ ವಾಕ್ಯDate: ಪ್ರಸ್ತುತ ತೂಕMessage-ID: ಬೀಜ ಆಧಾರಿತ ನಿರ್ಧಾರ ID
ಅಟ್ಯಾಚ್ಮೆಂಟ್ಗಳೊಂದಿಗೆ ಇಮೇಲ್
ಜನರೇಟರ್ ವರ್ಗದ ಹೆಸರಿಗಳ ಅಥವಾ ಉದಾಹರಣೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಫೈಲ್ಗಳನ್ನು ಸಂಪರ್ಕಿಸಲು:
use DefectiveCode\Faker\Generators\Email;use DefectiveCode\Faker\Generators\Png;use DefectiveCode\Faker\Generators\Pdf; Faker::make(Email::class) ->withAttachment(Png::class, 1, 3) // 1-3 PNG ಅಟ್ಯಾಚ್ಮೆಂಟ್ಗಳನ್ನು ಸೇರ್ಪಡೆ ಮಾಡಿ ->generate(); // ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ ಜನರೇಟರ್ ಉದಾಹರಣೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಸಂಪರ್ಕಿಸಿ$pngGenerator = new Png(Png::getDefaultConfig());$pngGenerator->width(400, 800)->height(300, 600); Faker::make(Email::class) ->withAttachment($pngGenerator, 2, 5) ->generate();
ಕ್ಷೆಟ್ ಉದಾಹರಣೆ:
To: John Doe <john.doe@example.com>From: Jane Smith <jane.smith@example.com>Subject: Important meeting tomorrowDate: Fri, 03 Jan 2026 10:30:00 +0000Message-ID: <3e92e5c2b0d632b3a36fbbb17484b7fe@example.com>Content-Type: multipart/mixed; boundary="----=_Part_123" ------=_Part_123Content-Type: text/plain; charset=utf-8Content-Transfer-Encoding: quoted-printable Lorem ipsum dolor sit amet, consectetur adipiscing elit... ------=_Part_123Content-Type: image/png; name="attachment.png"Content-Disposition: attachment; filename="attachment.png"Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==------=_Part_123--
ಅತಿದೊಡ್ಡ ಬಳಕೆ
ಕಸ್ಟಮ್ ಜನರೇಟರ್ಗಳು
ಜನರೇಟರ್ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಮೂಲಕ ನಿಮ್ಮದೇ ಆದ ಜನರೇಟರ್ಗಳನ್ನು ರಚಿಸಿ:
use DefectiveCode\Faker\Configs\Config;use DefectiveCode\Faker\Concerns\SetsSeed;use DefectiveCode\Faker\Generators\Generator;use DefectiveCode\Faker\Concerns\PreparesFaker; class MyCustomGenerator implements Generator{ use PreparesFaker; use SetsSeed; public function __construct(public Config $config) {} public static function getDefaultConfig(): Config { return new MyCustomConfig([ 'contentType' => 'application/x-custom', 'nameGenerator' => NameGenerator::default('extension'), ]); } public function generate(): mixed { // ನಿಮ್ಮ ಉತ್ಪಾದನಾ ತಂತ್ರ ಇಲ್ಲ $data = $this->faker->randomElement(['foo', 'bar', 'baz']); $stream = fopen('php://temp', 'w+'); fwrite($stream, $data); return $stream; }} // ನಿಮ್ಮ ಕಸ್ಟಮ್ ಜನರೇಟರ್ ಅನ್ನು ಬಳಸುವುದುFaker::make(MyCustomGenerator::class) ->toDisk($filesystem) ->generate();
ಕಾನ್ಫಿಗರೇಶನ್ ತರಗತಿಗಳು
ಪ್ರತಿಯ ಜನರೇಟರ್ Config ಅನ್ನು ವಿಸ್ತರಿಸುವ ಕಾನ್ಫಿಗರೇಶನ್ ತರಗತಿಯನ್ನು ಬಳಸುತ್ತದೆ:
use DefectiveCode\Faker\Configs\Config; class MyCustomConfig extends Config{ public int $minValue = 1; public int $maxValue = 100;}
ಕಾರ್ಯಕ್ಷಮতা ಸಲಹೆಗಳು
- Swoole ಅನ್ನು ಬಳಸಲು: ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯಿಗಾಗಿ Swoole ವಿಸ್ತರಣೆಯನ್ನು ಸ್ಥಾಪಿಸುವುದು
- ಸಮಾನುಪಾತವನ್ನು ಕಾಯ್ದಿರಿಸಿ: ಅತ್ಯುತ್ತಮ ಓಟದಿಗಾಗಿ ತಂತು ಸಂಖ್ಯೆಯನ್ನು CPU ಕೋರಿಗಳಿಗೆ ಹೊಂದಿಸಿ
- ಬ್ಯಾಚ್ ಕಾರ್ಯಗಳು: ಬಹಳ ದೊಡ್ಡ ಬ್ಯಾಚ್ಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತಿರುವ ಬದಲು ಸಾಕಷ್ಟು ಸಣ್ಣ ಓಟಗಳನ್ನು ನಿರ್ವಹಿಸು
- ಸಂಗ್ರಹಣೆ ಸ್ಥಳ: ತಾತ್ಕಾಲಿಕ ಫೈಲ್ಗಳಿಗೆ ವೇಗವಾದ ಸಂಗ್ರಹಣೆಯು (SSD, ಸ್ಥಳೀಯ ಡಿಸ್ಕ್)
- ನೆಟ್ವರ್ಕ್ I/O: S3 ಬಳಸುತ್ತಿರುವಾಗ, ಬ್ಯಾಂಡ್ವಿಡ್ತ್ ಬಳಸಲು ಸಮಾನುಪಾತವನ್ನು ಹೆಚ್ಚಿಸಿ
ಕಾನ್ಫಿಗರೇಶನ್
ಜಾಗತಿಕ ಕಾನ್ಫಿಗರೇಶನ್ ವಿಧಾನಗಳು
ಈ ವಿಧಾನಗಳು ಎಲ್ಲಾ Faker ಉದಾಹರಣೆಯಲ್ಲಿಯೂ ಲಭ್ಯವಾಗಿವೆ:
make(string $generator): Faker
ನಿರ್ದಿಷ್ಟ ಜನರೇಟರ್ನೊಂದಿಗೆ ಹೊಸ Faker ಉದಾಹರಣೆಯು ಸೃಷ್ಟಿ ಮಾಡುವುದು:
Faker::make(Png::class)
toDisk(Filesystem $filesystem): Faker
ಸಂಗ್ರಹಣೆಗೆ ಸ್ಥಳ ಹಕ್ಕನ್ನು ಸೆಟಿಂಗ್ ಮಾಡುವುದನ್ನು ನಿರ್ಣಾಯಿಸು (ಆವಶ್ಯಕ):
Faker::make(Png::class) ->toDisk(new Filesystem(new LocalFilesystemAdapter('/storage')))
basePath(string $basePath): Faker
ಫೈಲ್ಫ್ಲವಾರ್ನಲ್ಲಿನ ಬೆಸ್ ಪಾಥ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ:
Faker::make(Png::class) ->basePath('images/uploads') // ಫೈಲ್ಗಳು /storage/images/uploads/ ನಲ್ಲಿ ಸಂಚಾರಗೊಳ್ಳುತ್ತದೆ
count(int $count): Faker
ಜನರನ್ನು ರೂಪಿಸುವ ಫೈಲ್ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಸೆಟ್ ಮಾಡಿ:
Faker::make(Png::class) ->count(1000)
concurrency(int $threads, ?int $coroutines = null): Faker
ಸಮಾನಾಂತರ ನಿರ್ವಹಣವನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ:
// ಮೂಲ ಸಮಾನಂತರFaker::make(Png::class) ->concurrency(4) // Swoole-ಕಾಂಪ್ಯೂಟರ್: ತಂತುಗಳು ಮತ್ತು ಪ್ರತಿಯೊಬ್ಬ ತಂತುವನ್ನುFaker::make(Png::class) ->concurrency(threads: 4, coroutines: 8)
seed(int $seed): Faker
ನಿರ್ಧಿಷ್ಟ ಉತ್ಪಾದನೆಗಾಗಿ ಬೀಜವನ್ನು ಸೆಟ್ ಮಾಡಿ:
Faker::make(Png::class) ->seed(42)
nameGenerator(Closure $generator): Faker
ಫೈಲ್ಗಳ ಹೆಸರುಗಳನ್ನು ಕಸ್ಟಮ್ ಮಾಡಿದ ಮೇಲೆ ಕೇಳಿ:
Faker::make(Png::class) ->nameGenerator(function (int $seed, int $completedFiles, $generator) { return "file-{$completedFiles}.png"; })
diskOptions(array $diskOptions): Faker
ಫೈಲ್ಸಿಸ್ಟಮ್ ಅಡಾಪ್ಟರ್ಗೆ ಆಯ್ಕೆಯನ್ನು ಪಾಸ್ ಮಾಡಿ:
Faker::make(Png::class) ->diskOptions([ 'visibility' => 'public', 'ACL' => 'public-read', ])
generate(): void
ಫೈಲ್ ಉತ್ಪಾದನೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿ:
Faker::make(Png::class)->generate();
ಬೆಂಬಲ ಮಾರ್ಗಸೂಚಿಗಳು
ನಮ್ಮ ತೆರೆಯಾಗಿ ಮೂಲಪದಾರ್ಥವನ್ನು ಆಯ್ಕೆ ಮಾಡಿದಕ್ಕೋಸ್ಕರ ಧನ್ಯವಾದಗಳು! ದಯವಿಟ್ಟು ಈ ಬೆಂಬಲ ಮಾರ್ಗಸೂಚಿಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ನೂರು ಕೊಡಿ. ಇವು ನಿಮ್ಮ ಯೋಜನೆಯಿಂದ ಹೆಚ್ಚು ಕ್ಕಿಯಾಗಿ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
ಸಮುದಾಯ ನಡಿಸುವ ಬೆಂಬಲ
ನಮ್ಮ ತೆರೆಯಾಗಿ ಮೂಲಪದಾರ್ಥವು ನಮ್ಮ ಅದ್ಭುತ ಸಮುದಾಯದಿಂದ ಪ್ರೇರಿತವಾಗಿದೆ. ನಿಮ್ಮಿಗೆ ಪ್ರಶ್ನೆಗಳಿದ್ದರೆ ಅಥವಾ ಸಹಾಯದ ಅಗತ್ಯವಿದ್ದರೆ, StackOverflow ಮತ್ತು ಇತರ ಆನ್ಲೈನ್ ಸಂಪತ್ತುಗಳು ನಿಮ್ಮ ಉತ್ತಮ ಆಯ್ಕೆಯಾಗಿವೆ.
ದೋಷಗಳು ಮತ್ತು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಆದ್ಯತೆಯೀಡಿಸುವುದು
ಆವರ್ತಿತವಾಗಿರುವ ತೆರೆಯಾಗಿ ಮೂಲಪದಾರ್ಥವನ್ನು ನಿರ್ವಹಿಸುವ ವಾಸ್ತವವು, ಪ್ರತಿಯೊಬ್ಬ ವರದಿ ಮಾಡಿದ ದೋಷ ಅಥವಾ ವೈಶಿಷ್ಟ್ಯ ಕೇಳುವಿಕೆಯನ್ನೂ ತಕ್ಷಣ ಸಂಖ್ಯಾಪಟ್ಟಿ ಮಾಡುವುದು ಸಾಧ್ಯವಿಲ್ಲ. ನಾವು ಸಮಸ್ಯೆಗಳನ್ನು ಹೀಗೆಯೇ ಆದ್ಯತೆ ನೀಡುತ್ತೇವೆ:
1. ನಮ್ಮ ಪೈಸು ಉತ್ಪನ್ನಗಳನ್ನು ಪರಿಣಾಮ ಬೀರುವ ದೋಷಗಳು
ನಮ್ಮ ಪೈಸು ಉತ್ಪನ್ನಗಳನ್ನು ಪರಿಣಾಮ ಬೀರುವ ದೋಷಗಳು ಯಾವಾಗಲೂ ನಮ್ಮ ಉನ್ನತ ಆದ್ಯತೆ ಆಗುವವು. ಕೆಲವು ಸ್ಥಿತಿಗಳಲ್ಲಿ, ನಾವು ಕೇವಲ ನಮ್ಮನ್ನು ಅದೆ ಅಥವಾ ನೇರವಾಗಿ ಹಾನಿಯೊಳಗಾಗುವ ದೋಷಗಳನ್ನು ಮಾತ್ರ ಪರಿಹರಿಸಲಿಕ್ಕೆ ಇತ್ತು.
2. ಸಮುದಾಯ ಪುಲ್ Requestಗಳು
ನೀವು ಒಂದು ದೋಷವನ್ನು ಗುರುತಿಸಿದ್ದರೆ ಮತ್ತು ಒಂದು ಪರಿಹಾರವನ್ನು ಹೊಂದಿದ್ದರೆ, ದಯವಿಟ್ಟು ಕುರಿತಾದ ಪುಲ್ ಬುಟ್ಟಿ ಸಲ್ಲಿಸಿ. ನಮ್ಮ ಉತ್ಪನ್ನಗಳನ್ನು ಪರಿಣಾಮ ಬೀರುವ ಸಮಸ್ಯೆಗಳ ನಂತರ, ನಾವು ಸಮುದಾಯ-ಚಾಲಿತ ಪರಿಹಾರಗಳಿಗೆ ಮುಂದಿನ ಗರಿಷ್ಠ ಆದ್ಯತೆ ನೀಡುತ್ತೇವೆ. ಪರಿಶೀಲನೆ ಮತ್ತು ಅನುಮೋದನೆಯ ನಂತರ, ನಿಮ್ಮ ಪರಿಹಾರವನ್ನು ನಾವು ಸೇರಿಸುತ್ತೇವೆ ಮತ್ತು ನಿಮ್ಮ ಕೊಟ್ಟ ಒಡನೆಯ ಕುಂಬಳಕ್ಕೆ ಕ್ರೆಡಿಟ್ ನೀಡುತ್ತೇವೆ.
3. ಹಣಕಾಸಿನ ಬೆಂಬಲ
ಜಾಹೀರಾತು ಮಾಡದ ವರ್ಗಗಳ ಹೊರಗೊಮ್ಮಲುಗೆ, ನೀವು ಅವರ ಪರಿಹಾರಕ್ಕೆ ಹಣ ಮರುಪಾವತಿಸಲು ಆಯ್ಕೆ ಮಾಡಬಹುದು. ಪ್ರತಿ ತೆರೆಯಾದ ಸಮಸ್ಯೆ ಹಣಕಾಸಿನ ಕೊಡುಗೆ ನೀಡಲು ನೀವು ಜೋಡಿಸಲು ಅವಕಾಶ ఇಷ್ಟು ಇರುವ ಆರ್ಡರ್ ಫಾರ್ಮ್ಗೆ ಸಂಪರ್ಕಪಟ್ಟಿದೆ. ನಾವು ನೀಡಿದ ಹಣಕಾಸಿನ ಪ್ರಮಾಣಕ್ಕೆ ಆಧಾರಿತವಾಗಿ ಈ ಸಮಸ್ಯೆಗಳನ್ನು ಶ್ರೇಣೀಬದ್ಧ ಮಾಡುತ್ತೇವೆ.
ಸಮುದಾಯ ಕೊಡುಗೆಗಳು
ತೆರೆಯಾಗಿ ಮೂಲಬರಹವು ತನ್ನ ಸಮುದಾಯವು ತೀವ್ರರಾಗುವುದು. ನೀವು ದೋಷಗಳನ್ನು ಪರಿಹರಿಸುತ್ತಿಲ್ಲ ಆದರೂ, ಕೋಡ್ ಸುಧಾರಣ್ಗಳ ಮೂಲಕ, ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ನವೀಕರಣಗಳು, ಟ್ಯುಟೋರಿಯಲ್ಸ್, ಅಥವಾ ಸಮುದಾಯ ಚಾನೆಲ್ಗಳಲ್ಲಿ ಇತರರ ಸಹಾಯ ಮಾಡುವ ಮೂಲಕ ಕೊಡುಗೆ ನೀಡುವುದನ್ನು ಪರಿಗಣಿಸು. open-source ಕೆಲಸವನ್ನು ಬೆಂಬಲಿಸಲು ನಾವು ಎಲ್ಲರಲ್ಲಿಯೂ ಹತ್ತಿರ ಪ್ರೋತ್ಸಾಹಿಸುತ್ತೇವೆ.
ಮರಳಿ ಹೇಳಬೇಕಾದರೆ, DefectiveCode ನಮ್ಮ ಪೈಸು ಉತ್ಪನ್ನಗಳನ್ನು ಪರಿಣಾಮ ಬೀರುವ ದೋಷಗಳನ್ನು, ಸಮುದಾಯ ಪುಲ್ರಿಕ್ವೆಸ್ಟ್ಗಳನ್ನು, ಮತ್ತು ಸಮಸ್ಯೆಗಳಿಗೆ ದೊರೆತ ಹಣಕಾಸಿನ ಬೆಂಬಲವನ್ನು ಆಧರವಾಗಿ ಆದ್ಯತೆ ನೀಡುತ್ತದೆ.
ലൈസൻസ് - MIT ലൈസൻസ്സ്
കനിഹ് © Defective Code, LLC. എല്ലാറ്റിനും അവകാശങ്ങൾ കൊണ്ടിരിക്കൊണ്ടു
ഈ സോഫ്റ്റ്വെയർ മനസ്സിലാക്കുകയും, ഇതുമായി ബന്ധപ്പെട്ട രേഖകൾ (''സോഫ്റ്റ്വെയർ'') എന്നതിൽ, ആരയെങ്കിലും ഈ സോഫ്റ്റ്വെയറിന്റെ ഒരു പകർപ്പ് സ്വതന്ത്രമായി കൈവശപ്പെടുത്താൻ, സോഫ്റ്റ്വെയറിൽ നിയമനിർമ്മാണം ചെയ്യാൻ, ബഹുഭാഷാക്കാൻ, സമന്വയിക്കാൻ, പ്രസിദ്ധീകരിക്കാൻ, വിതരണം ചെയ്യാൻ, ഉപരിമിതിയുള്ളവനെ/വെബ്സൈറ്റിനെ/വിപണിയിൽ, സോഫ്റ്റ്വെയർ ისტორი അുനിയ്ക്കുന്നു, അത്തരം വ്യക്തികളെ അനുവദിക്കാനും, തുടർന്ന് ഈ ഘടനകളെ സമർപ്പിക്കുമ്, ഈ നിബന്ധനകൾ പാലിക്കുവാൻ തയ്യാറാണ്:
മുകളിൽ കൊടുത്ത കൃതിമാറ്റം നോട്ടം, ഈ അനുമതി നോട്ടം എല്ലാ കോപ്പികളിലും അല്ലെങ്കിൽ സോഫ്റ്റ്വെയറിന്റെ പ്രധാന ഭാഗങ്ങളിൽ ഉൾപ്പെടണം.
സോഫ്റ്റ്വെയർ "എസ് ആസ്" എന്ന നിലയിൽ, ഏത് വിധത്തിലുള്ള ഗുണനിലവാരമോ, വ്യക്തമായോ അല്ലെങ്കിൽ സൂചിപ്പിക്കപ്പെട്ടതുമായ, വ്യാപാര സ്വദേശനിർമ്മാണം, പ്രത്യേക സാഹചര്യങ്ങൾക്കായുള്ള യോജ്യത, വിപരീതങ്ങളെക്കുറിച്ചുള്ള വൈകല്യങ്ങൾ അടക്കം, ഏതെങ്കിലും രൂപത്തിലുള്ള വഞ്ചനകൾ, ബാധ്യതയെ അറിഞ്ഞോ, അറിഞ്ഞില്ലയ്ക്കും, സോഫ്റ്റ്വെയർ അല്ലെങ്കിൽ സോഫ്റ്റ്വെയർ ഉപയോഗം അല്ലെങ്കിൽ അതിനോട് പൊരുത്തപ്പെടുന്ന മറ്റുള്ളവയിൽ നിൽക്കുന്നു, പിടിയിൽ അല്ലെങ്കിൽ കരാറിൽ, അഴുക്കുകൾ അല്ലെങ്കിൽ മറ്റെന്തെങ്കിലും, ഉയർന്ന കാര്യങ്ങളെ നേരിടുന്നു.