Hallo
Momenteel ben ik uit een txt bestand aan het lezen.
Nu staat er als test een lijn in deze txt : Titel vàn hét ( vierde ) item
Deze titel dien ik in een url te plaatsen : titel-van-het-vierde-item
Het geheel op zich werkt, maar de à en de é worden overzien : titel-vàn-hét-vierde-item
Om het txt bestand te lezen gebruik ik : $file = file("bestand.txt");
Vervolgens : foreach($file as $line_num => $line){ }
Waarschijnlijk zit ik ergens mis met encoding ofzo?
Kan er iemand me helpen? Alvast bedankt!
Met vriendelijke groeten
Wesley
- PHP - Lezen van txt file
-
13-01-2014, 11:28 #1
- Berichten
- 940
- Lid sinds
- 15 Jaar
PHP - Lezen van txt file
Laatst aangepast door WesleyVN : 13-01-2014 om 11:34
-
-
13-01-2014, 11:44 #2
- Berichten
- 106
- Lid sinds
- 11 Jaar
Re: PHP - Lezen van txt file
http://nl1.php.net/manual/en/function.iconv.php
Hiermee zou het moeten lukken?
-
13-01-2014, 11:53 #3
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
Hallo
Bedankt voor uw reactie, maar dit lukt helaas niet ...
Wanneer ik hetzelfde doe, maar dan afkomstig uit de database, dan lukt het wel.
Enkel wanneer ik deze variabele uit de txt haal, lukt het niet ... vandaar dat ik aan encoding dacht.
Met vriendelijke groeten
Wesley
-
13-01-2014, 11:56 #4
- Berichten
- 106
- Lid sinds
- 11 Jaar
Re: PHP - Lezen van txt file
Worden de tekens verwijderd bij de url?
Dus krijg je iets als titel-vn-ht-vierde-item?
In de database heb je ze ook staan met èé?
-
13-01-2014, 12:06 #5
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
Hallo
In de database heb ik staan : Titel vàn hét ( vierde ) item
Precies hetzelfde heb ik in de txt file vermeld staan.
Doe ik dan bijvoorbeeld : $title = str_replace("é", "e", $title);
Dan wordt de é niet vervangen wanneer het uit de txt komt, wel uit database.
Met vriendelijke groeten
Wesley
-
13-01-2014, 12:25 #6
- Berichten
- 449
- Lid sinds
- 14 Jaar
Re: PHP - Lezen van txt file
Probeer dit eens:
http://nl1.php.net/preg_replace#96586
-
13-01-2014, 12:47 #7
- Berichten
- 106
- Lid sinds
- 11 Jaar
Re: PHP - Lezen van txt file
als je de strings even via print_r uitgeeft (de strings van de txt + de strings van de db) zit daar dan verschil tussen?
-
13-01-2014, 12:51 #8
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
Wanneer ik deze functie gebruik met de variabele uit de txt krijg ik : titel-vn-ht-vierde-gerecht
De é en de à vallen dus gewoon weg - de haken ook, maar dat is zo gewenst.
Met vriendelijke groeten
Wesley
-
13-01-2014, 12:56 #9
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
-
13-01-2014, 12:59 #10
- Berichten
- 106
- Lid sinds
- 11 Jaar
Re: PHP - Lezen van txt file
Je bedoeld als je ze even print_r?
Dus waarschijnlijk worden de karakters met accents niet eens correct opgehaald.
Als je ipv file, file_get_contents gebruikt, wat gebeurd dan?
Of gebruik fopen http://www.php.net/manual/en/function.fopen.php
-
13-01-2014, 13:23 #11
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
Je bedoeld als je ze even print_r?
Dus waarschijnlijk worden de karakters met accents niet eens correct opgehaald.
Als je ipv file, file_get_contents gebruikt, wat gebeurd dan?
Of gebruik fopen http://www.php.net/manual/en/function.fopen.php
Wanneer ik deze variabelen op mijn website print ( zonder verdere bewerkingen ) : Titel vàn hét (vierde) gerecht
Het wordt dus correct gelezen. Dan doe ik : $title = str_replace("é", "e", $title); dan gebeurt er niets, é blijft zichtbaar.
Met vriendelijke groeten
Wesley
-
13-01-2014, 13:24 #12
- Berichten
- 106
- Lid sinds
- 11 Jaar
Re: PHP - Lezen van txt file
zou je even je textfile + je script hier kunnen posten. Dan kan ik het proberen na te bootsen
-
13-01-2014, 13:38 #13
- Berichten
- 940
- Lid sinds
- 15 Jaar
Re: PHP - Lezen van txt file
Titel van het eerste item
Titel van het tweede item
Titel van het derde item
Titel vàn hét (vierde) item
Dit is mijn code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
</head>
<body>
<?php $file = file("file.txt");
foreach($file as $line_num => $line){ echo $line; } ?>
</body>
</html>
Doe ik dit, dan krijg ik 2 zwarte vraagtekens op de plaatsen waar de à en de é staan :
Titel van het eerste gerecht Titel van het tweede gerecht Titel van het derde gerecht Titel v�n h�t (vierde) gerecht
Dat wijst volgens mij op een foutieve codering ... of vergis ik me?
-
13-01-2014, 13:43 #14
64BitsWebhosting.EU
- Berichten
- 2.085
- Lid sinds
- 18 Jaar
Re: PHP - Lezen van txt file
mb_convert_encoding ($line, 'utf-8') als eens geprobeerd?
-
13-01-2014, 14:40 #15
- Berichten
- 280
- Lid sinds
- 14 Jaar
Re: PHP - Lezen van txt file
open het txt bestand in notepad++
klik op menu item 'encoding'
post hier wat daar aangevinkt staat
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic