Bonsoir à tous.
J'ai un document XML qui semble être encodé en UTF-8
<?xml encoding="UTF-8"?>
(d'après le DTD).

Le problème est, lorsque j'affiche le contenu d'un élément de ce document, je me retrouve avec des caractères 'bizarres', je sais donc qu'il y a un problème d'encodage
J'ai essayé de modifier le php.ini:
default_charset = "UTF-8"
Aucun changement visible...
J'ai donc essayé la fonction utf8_decode, maintenant, certains caractères s'affichent mais pour les apostrophes par exemple, je me retrouve avec un '?'...

Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php
$wnd = new GtkWindow(0);
$wnd->set_title('Document XML');
$wnd->connect_simple('destroy', array('gtk', 'main_quit'));
$document = SimpleXML_load_file('actu.xml');
 
if(!$document) {
	echo 'Erreur';
}
else {
	$table = new GtkTable();
	$i = 0;
	foreach ($document->article as $article) {
		$titre = (string) utf8_decode($article->titrearticle);
		$label = new GtkLabel($titre);
		$label->set_selectable(true);
		$table->attach($label, 0, 1, $i, $i + 1);
		$i = $i + 2;
	}
	$wnd->add($table);
}
 
$wnd->show_all();
Gtk::main();
?>
PS: J'utilise un transtypage (string) car le GtkLabel ne considère pas $article->titrearticle comme une chaîne de caractère mais comme un élément de document XML donc ça provoque une erreur...

Merci à tous pour votre aide à venir...

PS2: J'ai même essayé de modifier le charset avec header(); mais là aussi aucun changement visible...