PHP附加到ClientDataSet CDS文件

时间:2012-05-31 00:09:55

标签: php database arrays delphi tclientdataset

我有一个空的Delphi ClientDataSet CDS文件设置,其中包含我需要的所有列/标题/数据类型。我想使用PHP将关联数组附加到CDS行中。这可能吗?

阵列可能只是:

{
    1: {Name:Captain, Phone:18001234567}
    2: {Name:Jack, Phone:18009876543}
    3: {Name:Sparrow, Phone:18887892345}
}

我选择了PHP,因为我精通这门语言而且我的网络服务器是一个共享Linux主机。基本上我不能在这里运行Delphi。我对其他可以在这种环境下工作的选项持开放态度。谢谢!

编辑:

有关我的决议,请参阅此帖子上的评论。

1 个答案:

答案 0 :(得分:1)

我建议你不要直接写入cds文件。

相反,您可以为两个应用程序(PHP和Delphi)使用通用xml,在delphi端使用带有TXmlTransformProvider的XML Transformation加载和保存它,在PHP端,您只需将其写入XML即可你经常这样做。

看看here如何在delphi上进行设置。

- UPDATE

如果您真的需要直接更改cds文件(使用xml格式),您可以添加一个新的cds文件,考虑到cds格式是xml,如下所示:

<?xml version="1.0" standalone="yes"?>  
<DATAPACKET Version="2.0">
    <METADATA>
        <FIELDS>
            <FIELD attrname="Name" fieldtype="string" WIDTH="24"/>
            <FIELD attrname="Capital" fieldtype="string" WIDTH="24"/>            
        </FIELDS>
        <PARAMS DEFAULT_ORDER="1" PRIMARY_KEY="1" LCID="2057"/>
    </METADATA>
    <ROWDATA>
        <ROW Name="Argentina" Capital="Buenos Aires"/>
        <ROW Name="Bolivia" Capital="La Paz"/>
        <ROW Name="Brazil" Capital="Brasilia"/>
        <ROW Name="Canada" Capital="Ottawa"/>        
        <ROW Name="United States of America" Capital="Washington"/> 
        //Add your new ROW tag here with your data       
    </ROWDATA>
</DATAPACKET>