$paypal_details = "array (
'last_name' => 'Savani',
'item_name' => 'Description and pricing details here.',
'item_number' => '101',
'custom' => 'localhost',
'period' => '1',
'amount' => '10.01'
)";以下是包含完整数组示例字符串。是否可以将字符串原样转换为数组?
发布于 2016-11-20 02:27:35
您确实应该尝试获取JSON或XML格式的信息,这两种格式都可以由PHP本地解析。如果这是不可能的,您可以使用下面的代码片段从字符串中获取PHP数组。它使用regular expressions将字符串转换为JSON格式,然后使用json_decode对其进行解析。
当然,应该进行改进以处理值中的转义单引号等,但这只是一个开始。
$paypal_details = "array (
'last_name' => 'Savani',
'item_name' => 'Description and pricing details here.',
'item_number' => '101',
'custom' => 'localhost',
'period' => '1',
'amount' => '10.01'
)";
# Transform into JSON and parse into array
$array = json_decode(
preg_replace(
"/^\s*'(.*)' => '(.*)'/m", # Turn 'foo' => 'bar'
'"$1": "$2"', # into "foo": "bar"
preg_replace(
"/array \((.*)\)/s", # Turn array (...)
'{$1}', # into { ... }
$paypal_details
)
),
true
);
echo "Last name: " . $array["last_name"] . PHP_EOL;输出:
Last name: Savani发布于 2016-11-19 20:50:38
您可以使用explode()函数。
<?php
$str = "Hello world. It's a beautiful day.";
print_r(explode(" ", $str));http://www.w3schools.com/php/func_string_explode.asp
https://stackoverflow.com/questions/40693030
复制相似问题