คำสั่ง tinker ของ Artisan เป็นวิธีที่ยอดเยี่ยมในการปรับแต่งแอปพลิเคชันของคุณในเทอร์มินัล น่าเสียดายที่การใช้โค้ดเพียงไม่กี่บรรทัด การแก้ไข และการคัดลอก/วางโค้ดอาจเป็นเรื่องยุ่งยาก จะดีกว่าไหมถ้าคนจรจัดในเบราว์เซอร์?
แพ็คเกจนี้จะเพิ่มเส้นทางไปยังแอปพลิเคชันของคุณซึ่งคุณสามารถปรับแต่งเนื้อหาที่ใจของคุณได้
ในกรณีที่แสงทำร้ายดวงตาของคุณ ก็มีโหมดมืดด้วยเช่นกัน
เราลงทุนทรัพยากรจำนวนมากเพื่อสร้างแพ็คเกจโอเพ่นซอร์สที่ดีที่สุดในระดับเดียวกัน คุณสามารถสนับสนุนเราได้โดยการซื้อหนึ่งในผลิตภัณฑ์ที่ต้องชำระเงินของเรา
เราขอขอบคุณอย่างยิ่งที่คุณส่งโปสการ์ดจากบ้านเกิดของคุณถึงเรา โดยระบุว่าคุณใช้แพ็คเกจใดของเรา คุณจะพบที่อยู่ของเราในหน้าติดต่อของเรา เราเผยแพร่โปสการ์ดที่ได้รับทั้งหมดบนวอลล์โปสการ์ดเสมือนของเรา
แพ็คเกจนี้สามารถเรียกใช้โค้ดที่กำหนดเองได้ เว้นแต่คุณจะรู้ว่ากำลังทำอะไรอยู่ คุณไม่ควรติดตั้งหรือใช้สิ่งนี้ในสภาพแวดล้อมการใช้งานจริง หรือสภาพแวดล้อมใดๆ ที่คุณจัดการข้อมูลในโลกแห่งความเป็นจริง
คุณสามารถติดตั้งแพ็คเกจผ่านทางผู้แต่ง:
composer require spatie/laravel-web-tinker --dev
ถัดไป คุณต้องเผยแพร่เนื้อหาจากแพ็คเกจนี้โดยการรันคำสั่งนี้
php artisan web-tinker:install
หรือคุณสามารถเผยแพร่ไฟล์กำหนดค่าของแพ็คเกจได้
php artisan vendor:publish --provider= " SpatieWebTinkerWebTinkerServiceProvider " --tag= " config "
นี่คือเนื้อหาที่จะเผยแพร่ไปยัง config/web-tinker.php
return [
/*
* The web tinker page will be available on this path.
*/
' path ' => ' /tinker ' ,
/*
* Possible values are 'auto', 'light' and 'dark'.
*/
' theme ' => ' auto ' ,
/*
* By default this package will only run in local development.
* Do not change this, unless you know what your are doing.
*/
' enabled ' => env ( ' APP_ENV ' ) === ' local ' ,
/*
* This class can modify the output returned by Tinker. You can replace this with
* any class that implements SpatieWebTinkerOutputModifiersOutputModifier.
*/
' output_modifier ' => Spatie WebTinker OutputModifiers PrefixDateTime::class,
/*
* These middleware will be assigned to every WebTinker route, giving you the chance
* to add your own middlewares to this list or change any of the existing middleware.
*/
' middleware ' => [
Illuminate Cookie Middleware EncryptCookies::class,
Illuminate Session Middleware StartSession::class,
Spatie WebTinker Http Middleware Authorize::class,
],
/*
* If you want to fine-tune PsySH configuration specify
* configuration file name, relative to the root of your
* application directory.
*/
' config_file ' => env ( ' PSYSH_CONFIG ' , null ),
];
โดยค่าเริ่มต้นแพ็คเกจนี้จะทำงานในสภาพแวดล้อมท้องถิ่นเท่านั้น
ไปที่ /tinker
ในสภาพแวดล้อมท้องถิ่นของแอพของคุณเพื่อดูหน้า tinker
หากคุณต้องการเรียกใช้สิ่งนี้ในสภาพแวดล้อมอื่น (เราไม่แนะนำสิ่งนี้) คุณต้องดำเนินการสองขั้นตอน
viewWebTinker
สถานที่ที่ดีในการทำเช่นนี้คือใน AuthServiceProvider
ที่มาพร้อมกับ Laravel public function boot ()
{
$ this -> registerPolicies ();
Gate:: define ( ' viewWebTinker ' , function ( $ user = null ) {
// return true if access to web tinker is allowed
});
}
enabled
ในไฟล์กำหนดค่า web-tinker
เป็น true
คุณสามารถแก้ไขเอาต์พุตของ tinker ได้โดยการระบุตัวแก้ไขเอาต์พุตในคีย์ output_modifier
ของไฟล์กำหนดค่า web-tinker
ตัวแก้ไขเอาต์พุตคือคลาสใดๆ ที่ใช้ SpatieWebTinkerOutputModifiersOutputModifier
นี่คือลักษณะของอินเทอร์เฟซนั้น
namespace Spatie WebTinker OutputModifiers ;
interface OutputModifier
{
public function modify ( string $ output = '' ): string ;
}
การติดตั้งเริ่มต้นของแพ็คเกจนี้จะใช้ตัวแก้ไขเอาต์พุต PrefixDataTime
ซึ่งนำหน้าเอาต์พุตจาก Tinker ด้วยวันที่ปัจจุบัน
composer test
โปรดดู CHANGELOG สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เปลี่ยนแปลงเมื่อเร็วๆ นี้
โปรดดูการมีส่วนร่วมเพื่อดูรายละเอียด
หากคุณพบข้อบกพร่องเกี่ยวกับการรักษาความปลอดภัย โปรดส่งอีเมลมาที่ [email protected] แทนการใช้ตัวติดตามปัญหา
แพ็คเกจนี้ได้รับแรงบันดาลใจและใช้โค้ดจากแพ็คเกจ nova-tinker-tool โดย Marcel Pociot
ใบอนุญาตเอ็มไอที (MIT) โปรดดูไฟล์ใบอนุญาตสำหรับข้อมูลเพิ่มเติม