我希望有人可以在这里指出正确的方向,上网几个小时,并找不到解决方案。
首先,我是" OKAY" php编码器..所以这可能是obvi但我迷路了。
我有一个带有array()的txt文件来自api事务列表。
Array
(
[orderid] => 00000000
[type] => rebill
[paystatus] => cancelled
)
Array
(
[orderid] => 000000
[type] => rebill
[paystatus] => cancelled
)
Array
(
[orderid] => 000000
[type] => refund
[paystatus] => cancelled
[productid] => 939399393
[firstName] => XXXXXX
[lastName] => XXXX
[customeremail] => XXXX
[amount] => XX.XX
[refunddate] => 2015-01-01
[refundstatus] => ok
)
有成千上万的这些数组()' s我用来处理json等为每个人拉,但是现在我完全迷失了。
我可以用
复制文件$f = fopen("merged.txt", "r");
// Read line by line until end of file
while(!feof($f)) {
echo fgets($f) . "<br />";
}
fclose($f);
......那是
我曾经玩过各种各样的foreach,而且无法让它发挥作用。 如果有人能指出正确的方向,我会非常感激。
谢谢!
答案 0 :(得分:1)
试试这个怎么样?
$content= file_get_contents("merged.txt");
$arrays = explode('Array',ltrim(trim($content),'Array'));
echo "<table>";
foreach($arrays as $key => $value){
$value = text_to_array("Array".$value);
echo "<tr>";
echo "<td>";
echo $value['orderid'];
echo "</td>";
echo "</tr>";
}
echo "</table>";
function text_to_array($str) {
//Initialize arrays
$keys = array();
$values = array();
$output = array();
//Is it an array?
if( substr($str, 0, 5) == 'Array' ) {
//Let's parse it (hopefully it won't clash)
$array_contents = substr($str, 7, -2);
$array_contents = str_replace(array(' ', '[', ']', '=>'), array('', '#!#', '#?#', ''), $array_contents);
$array_fields = explode("#!#", $array_contents);
//For each array-field, we need to explode on the delimiters I've set and make it look funny.
for($i = 0; $i < count($array_fields); $i++ ) {
//First run is glitched, so let's pass on that one.
if( $i != 0 ) {
$bits = explode('#?#', $array_fields[$i]);
if( $bits[0] != '' ) $output[$bits[0]] = $bits[1];
}
}
//Return the output.
return $output;
} else {
//Duh, not an array.
echo 'The given parameter is not an array.';
return null;
}
}
答案 1 :(得分:0)
首先为所有数组创建一个PHP文件。不是TXT文件。
然后需要对所有数组进行一次更改,定义每个变量中的每个数组。
$var1 = Array
(
[orderid] => 00000000
[type] => rebill
[paystatus] => cancelled
)
然后只使用值,
echo $var1['orderid'];
由于