Bonjour,
avec le bout de script cidessous, je lis le fichier nommé BD.xml le soucis est que le fichier n'est pas lu dans son intégralité... il manque systématiquement la dernière itération...
un extrait (la fin) du fichier BD.xmlCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 <?php $dom = new DomDocument; $dom->load("BD.xml"); $list_clients = $dom->getElementsByTagName("Cashpos"); $result = ''; foreach($list_clients as $clients) { // TRAITEMENT DES BALISES $result = str_replace ("</Cashpos>", "AAAA", $result); // REMPLISSAGE DES TAG VIDES $result = str_replace ("<MatDate/>", "NO_DATA;", $result); $result = str_replace ("<IntMat/>", "NO_DATA;", $result); $result = str_replace ("<NoticeDays/>", "NO_DATA;", $result); // SUPPRESSION DES SAUTS DE LIGNE $result = str_replace(array("\r", "\n","\r\n" ), '', $result); // SAUT DE LIGNE $result = str_replace("<br>", "<br>\n", $result); // SUPPRESSION DES BALISES // $result = strip_tags($result, '<br>'); $result = str_replace ("AAAA","<br>", $result); // echo "--- CASH POSITIONS --- <br />"; $result .= $dom->saveXml($clients); } echo $result; file_put_contents('BD.txt', $result);// <-- TRAITEMENT TEMPORAIRE ?>
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 .....<IntMat/> <NoticeDays/> </Cashpos> </pos> <pos PosId="10254672"> <Cashpos> <Iban>testtesttest</Iban> <AssetType>9100</AssetType> <AssetCcy>NOK</AssetCcy> <balVal>0.00</balVal> <balBook>0.00</balBook> <PosBalDate>2013-03-26</PosBalDate> <PosBalEur>0.00</PosBalEur> <CreditRate>0</CreditRate> <DebitRate>7.50000</DebitRate> <StartDate>2012-08-23</StartDate> <MatDate/> <AccrInt>0.00</AccrInt> <IntMat/> <NoticeDays/> </Cashpos> </pos> <pos PosId="10254671"> <Cashpos> <Iban>testetstetste</Iban> <AssetType>9100</AssetType> <AssetCcy>CAD</AssetCcy> <balVal>427.50</balVal> <balBook>427.50</balBook> <PosBalDate>2013-03-26</PosBalDate> <PosBalEur>325.39</PosBalEur> <CreditRate>0</CreditRate> <DebitRate>7.00000</DebitRate> <StartDate>2012-08-23</StartDate> <MatDate/> <AccrInt>0.00</AccrInt> <IntMat/> <NoticeDays/> </Cashpos>
Merci.