我有一个问题,我无法通过 ssh 访问服务器,因此无法使用 php artisan、composer 和其他命令。
因为我可以问他们除了修改文件或只是将 php src 文件复制到特定目录之外什么都不做。
为了更好地理解该过程,并且由于无法通过 ssh 访问服务器,我正在寻找教程、手册或文章,我如何手动执行此命令。
例如我需要执行
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\JWTAuthServiceProvider"
在这种情况下我应该怎么做,很高兴找到一些文档描述了我应该手动做什么才能获得相同的结果。
我正在尝试从控制器执行一些自定义工匠命令,例如
Artisan::call('php artisan MyCustomCommand');
但是当我执行时它工作正常
php artisan MuCustomCommand from CLI.
我在app/start/artisan.php.
Even 中注册的命令Artisan::call('php artisan --help');不起作用。
今天我遇到了一个我以前从未遇到过的非常奇怪的情况,并且在任何地方都找不到解决办法。
每当我php artisan在控制台中输入时,它都不会返回任何内容。试图克隆回购协议(其中这里在其他机器上正常工作)多次,做了新鲜的composer update,composer install和设置为laravel项目。
在SO上发现了多个这样的案例,运行后 find -L ./ -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l | grep "Errors parsing".
我得到了这个日志:
PHP 致命错误:无法在第 83 行的 ./vendor/paragonie/random_compat/lib/random_bytes_openssl.php 中重新声明 random_bytes() 错误解析 ./vendor/paragonie/random_compat/lib/random_bytes_openssl.php PHP 致命错误:无法重新声明字节() random_在 ./vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php 第 148 行解析错误 ./vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php xargs: php: exited with status 255; 中止 xargs:php:退出状态为 255;中止 PHP 致命错误:无法在 ./vendor/paragonie/random_compat/lib/random_int.php 中重新声明 random_int() 第 191 行错误解析 ./vendor/paragonie/random_compat/lib/random_int.php PHP 致命错误:无法重新声明 random_bytes( ) 在 ./vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php 第 76 行错误解析。
希望你们能帮助我。
谢谢!
我将 Laravel 5.5 与laravel-modules v2 一起使用。
在自定义目录中(特别是在模块内)生成迁移很容易:
php artisan make:migration create_users_table --path=Modules/User/Database/Migrations
Run Code Online (Sandbox Code Playgroud)
但似乎这对于播种课程是不可能的:
php artisan make:seeder UsersTableSeeder --path=Modules/User/Database/
Run Code Online (Sandbox Code Playgroud)
“--path”选项不存在。
或传递完整的相对路径:
php artisan make:seeder Modules/User/Database/Migrations/UsersTableSeeder
Run Code Online (Sandbox Code Playgroud)
在./database/seeds/ 中创建这个完全相同的文件夹结构
或传递完整的绝对路径:
php artisan make:seeder /Modules/User/Database/Migrations/UsersTableSeeder
Run Code Online (Sandbox Code Playgroud)
file_put_contents(\my\file\system\project\database/seeds/C:/Program Files/Git /Modules/User/Database/Seeders/UsersTableSeeder.php):无法打开流:没有这样的文件或目录
如何在自定义目录中使用 artisan 命令生成播种机?
我现在已经搜索了几个小时,但即使有类似的问题也找不到解决方案。
我正在尝试php artisan tinker使用用户webmaster(项目目录的所有者demo)在全新的 laravel 安装上运行,但出现以下错误:
In Configuration.php line 352:
mkdir(): Permission denied
Run Code Online (Sandbox Code Playgroud)
使用详细标志运行:
异常跟踪:Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at n/a:n/a mkdir() at /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Configuration。 php:352 Psy\Configuration->getRuntimeDir() at /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Shell.php:185 Psy\Shell->getDefaultCommands() at /media/ usb/drive1/websites/demo/vendor/symfony/console/Application.php:1211 Symfony\Component\Console\Application->init() 在 /media/usb/drive1/websites/demo/vendor/symfony/console/Application .php:435 Symfony\Component\Console\Application->add() 在 /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Shell.php:134 Psy\Shell->add( ) 在 /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:421 Symfony\Component\Console\Application->addCommands() 在 /media/usb/drive1/websites/demo/vendor/laravel/tinker/src/Console/TinkerCommand.php:54 Laravel\Tinker\Console\TinkerCommand->handle() 在 n/a:n/a call_user_func_array() 在 /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 Illuminate\Container\BoundMethod::Illuminate\Container{closure}() 在 /media /usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/ BoundMethod.php:87 Illuminate\Container\BoundMethod::callBoundMethod() 在 /media/usb/drive1/websites/demo/vendor/ laravel/framework/src/Illuminate/Container/BoundMethod.php:31 Illuminate\Container\BoundMethod::call() 在 /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/Container .php:549 Illuminate\Container\Container->call() 在 /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Console/Command.php:183 Illuminate\Console\Command->execute() 在 /media/usb/drive1/网站/演示/供应商/symfony/console/Command/Command.php:252 Symfony\Component\Console\Command\Command->run() 在 /media/usb/drive1/websites/demo/vendor/laravel/framework/src /Illuminate/Console/Command.php:170 Illuminate\Console\Command->run() 在 /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:938 …
在 Laravel 中运行迁移时出现错误:
PHP 致命错误:无法声明类 UpdateEnquiriesTable,因为该名称已在第 33 行的 /var/www/project/database/migrations/2018_01_17_160335_update_enquiries_table.php 中使用
做了一些研究后,我发现每个迁移文件都需要一个唯一的类名(我不记得之前提到过,但那可能是我)。
根据另一个问题,建议更改其中一个类的名称。
但是其他人建议删除冲突的迁移。
哪个是首选?假设两者都有效。
如何将 Eloquent 查询的结果存储到 tinker 中的变量,而不将结果打印到控制台?
例如,当我运行时,$threads = App\Thread::all()我只想将结果存储在变量中$threads而不查看所有线程。修补匠中有类似“安静模式”的东西吗?
当我通常运行命令时,我会这样做/var/www/project/html/current/,它看起来像这样php artisan import:myData。这很好用。
但是当我将其作为 cron 作业运行时,我无法让它工作,我尝试了以下 cron 作业。
*/3 * * * 1-5 cd /var/www/project/html/current/ php artisan import:myData >/dev/null 2>&1
*/3 * * * 1-5 /var/www/project/html/current/ php artisan import:myData >/dev/null 2>&1
*/3 * * * 1-5 /usr/local/bin/php /var/www/project/html/current/ php artisan import:myData >/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
有人有建议吗?
谢谢
我可以使用以下命令获取第一个用户,他是 Laravel tinker 的管理员:
$adminUser = App\User::where('is_admin',true)->first();
我如何获得满足此条件的所有用户?
有没有办法执行一些工匠命令,使用自定义工匠命令,就像我想制作一个名为的自定义命令:
$ php artisan project:init
Run Code Online (Sandbox Code Playgroud)
将执行像一些命令php artisan migrate:refresh和php artisan db:seed与php artisan config:clear
有没有办法做到这一点?
laravel-artisan ×10
php ×8
laravel ×7
composer-php ×2
laravel-5 ×2
tinker ×2
cron ×1
laravel-4.2 ×1
laravel-5.5 ×1
permissions ×1
php-7 ×1
ssh ×1