1

私は配列構造をコーディングスタイルとして生成しようとしているので、その目的のためにさらに開発するために使用できます。

function convertArray($string)
{
        $finalString = var_export($string, true);
        return stripslashes($finalString);
}

うまくいきましたが、問題は、値の最初と最後に追加の引用符を追加することです。これらの引用符を削除するにはどうすればよいですか。

生成された文字列の例は次のとおりです。

array (
  'foo' => 'array('foo','bar','baz')',
  'bar' => 'array('foo','bar')',
  'baz' => 'array('foo','bar')',
);

必要な文字列は次のとおりです。

array (
      'foo' => array('foo','bar','baz'),
      'bar' => array('foo','bar'),
      'baz' => array('foo','bar'),
    );

アップデート

配列を作成する方法は次のとおりです。

foreach( $attributes as $attrib )
    {
        if( $attrib->primary_key == '1' )
            $column[$attrib->name] = array("'$attrib->type'", "'$attrib->max_length'", '\'pk\'');
        else
            $column[$attrib->name] = array("'$attrib->type'", "'$attrib->max_length'");

        $string[$attrib->name] = 'array('.implode(',', $column[$attrib->name]).')';
    }

このループから処理した後、最終的な配列が上記の関数に送信され、目的の形式に変換されます/

4

2 に答える 2

1

そして、バックスラッシュを使用できます

$string = "Some text \" I have a double quote";
$string1 = 'Second text \' and again i have quote in text';

そして失われたバリアント

例では、1 つのばかバリアントを使用して、多くの行文字列を作成できます。

$string = <<<HERE
Many many text
HERE;

ただし、このバリアントの使用はお勧めしません

于 2012-08-12T20:06:20.627 に答える
0

トリムを使用してみてください。例:

$string = "'text with quotes'";
echo $string; // output: 'text with quotes'
echo trim($string, array("'")); // output: text with quotes
于 2012-08-12T19:22:06.447 に答える