Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Phinx-将参数传递给模板的自定义迁移模板_Php_Symfony_Cakephp_Console Application_Phinx - Fatal编程技术网

Php Phinx-将参数传递给模板的自定义迁移模板

Php Phinx-将参数传递给模板的自定义迁移模板,php,symfony,cakephp,console-application,phinx,Php,Symfony,Cakephp,Console Application,Phinx,我已经创建了一个存根/模板文件,用于创建迁移 <?php use Phinx\Migration\AbstractMigration; class DummyTableMigration extends AbstractMigration { public function up() { // Create the table $table = $this->table('table_name'); $table-

我已经创建了一个存根/模板文件,用于创建迁移

<?php

use Phinx\Migration\AbstractMigration;

class DummyTableMigration extends AbstractMigration
{
    public function up()
    {
        // Create the table
        $table = $this->table('table_name');

        $table->addColumn('column_name', 'string', ['limit' => 255])
              ->create();
    }

    public function down()
    {
        $this->table('table_name')->drop()->save();
    }
}

检查默认模板,它使用PHP样式变量作为类名和其他各个方面:


您是否尝试过使用模板标记,例如在
cakephp/migrations/src/template/Bake/config/skeleton.ctp
中?是的,我已经在变量中看到了这一点,我只是不确定如何在ArrayInput@ltdev那么您问题中的
DummyTableMigration
类不是您的模板?
$className
变量内容是从
name
输入选项获得的,因此您只需将其传递到数组选项中,如
'name'=>'TheClassName'
。如果您想从某个地方动态地获取,那么您需要详细说明这一点。
$phinx = new PhinxApplication();
    $input = new ArrayInput([
        'command' => 'create',
        'name' => $input->getArgument('name'),
        '-c' => './config/phinx.php',
        '-t' => '../../Console/stubs/migrations/customTemplateMigration.stub'),
    ]);

    return $phinx->find('create')->run($input, $output);