ホームページ >バックエンド開発 >PHPチュートリアル >PHP で配列の文字列表現を配列に変換するにはどうすればよいですか?
印刷表現から配列を抽出する方法
配列が与えられた場合、print_r() 関数を使用してその内容を印刷したい場合があります。 。ただし、結果の出力は配列の文字列表現になります。
この文字列を配列に変換するには、以下に示すようなカスタム関数を利用できます。
function text_to_array($str) { // Initialize arrays $keys = array(); $values = array(); $output = array(); // Check if the input is an array if( substr($str, 0, 5) == 'Array' ) { // Parse the input $array_contents = substr($str, 7, -2); $array_contents = str_replace(array('[', ']', '=>'), array('#!#', '#?#', ''), $array_contents); $array_fields = explode("#!#", $array_contents); // Process each array field for($i = 0; $i < count($array_fields); $i++ ) { // Skip the first field (it's empty) if( $i != 0 ) { $bits = explode('#?#', $array_fields[$i]); if( $bits[0] != '' ) $output[$bits[0]] = $bits[1]; } } } return $output; }
配列の出力表現を引数としてこの関数を呼び出すと、元の配列データを取得できます:
$array_string = print_r($original_array, true); $new_array = text_to_array($array_string);
以上がPHP で配列の文字列表現を配列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。