JSONify Python提供给PHP

时间:2014-08-11 22:46:37

标签: php python arrays boto amazon-dynamodb

==========编辑:==========

基于以下问题,并在下面回答使用JSON。我在重述这个问题。

如何从boto dynamo获取数据并对其进行jsonify?

现在我有这样的事情:

adv = #my advertiser
ads = self.swfTable.scan(advertiser__eq = adv)
arr=[]
for a in ads:
    arr.append(a)
str = []
for i in arr:
    str += [json.dumps(fields) for fields in i]
if str is not []:
    json.dumps([ str.to_json() for ad in str ])

如何将其转换为漂亮的JSON转储或以其他方式将其发送到我的php?

==========原始问题:==========

原谅我,我是PHP的新手。

所以我有一个字符串化的对象数组。

例: 数组[{cat,bat},{mat,hat}] - > [“猫”,“蝙蝠”,“垫子”,“帽子”](让我们称之为下面的aList)

如果我知道每个对象的长度为2。是通过解析字符串来改造这个数组的唯一方法吗?有没有聪明的PHP方法可以做到这一点?

在这种情况下,我正在尝试将数据从python移动到PHP,并且发送打印的数组似乎是我编写api连接的最佳/最通用的方式。

这是我的伪代码解决方案:

aList = file_get_contents(myUrl)
splitList = aList.split(",") # is there anyway to exclude "," from being also noticed? ex "app,le","blueberry" should only split 1x?
objects=[]
newObject{}
for int i =0;i<splitList.len; i++
     if i%2
          newObject.append(splitList[i])
          objects.append(newObject)
          newObject = {}
     else:
          newObject.append{list[i]}

有没有办法以更少的线/更有效率地做到这一点?同样如上所述:无论如何排除“,”还被注意到了吗? ex“app,le”,“blueberry”应该只拆分1x?

1 个答案:

答案 0 :(得分:1)

您真的应该考虑跨语言序列化,例如JSONMessagePack。例如,请参阅PHP's json_decodePython's json的文档。