login  Naam:   Wachtwoord: 
Registreer je!
 Forum

inhoud bestand op verschillende mogelijke manieren zien te krijgen (Opgelost)

Offline Grayen - 30/12/2007 15:06
Avatar van GrayenPHP ver gevorderde Ik ben opzoek naar de juiste manier om het volgende te kunnen doen:

Je hebt een functie die 2 argumenten heeft.

1) hoe je het bestand wilt noemen
2) de inhoud van het bestand

Alleen dat tweede argument mag de volgende drie dingen bevatten.

1) een string van de inhoud van het bestand
2) een url met de locatie van het bestand dat zich op de server bevind
3) een url met de locatie van het bestand dat zich op een andere site bevind

Uiteindelijk moeten alle drie de dingen de inhoud van het bestand geven.

Nu zou ik graag willen weten hoe kun je ervoor zorgen dat je dit voor elkaar krijgt. Dus hoe kan ik achterhalen of het tweede argument de inhoudt van een bestand is, een url van een lokaal bestand of de url van een bestand op een andere site.

Als ik zou kunnen vaststellen dat het tweede argument de inhoud van een bestand is, dan zou je kunnen kijken met PHP.net: realpath of het een url is van een lokaal bestand en dus ook of het dan een url is van een bestand op een andere site.

Of het tweede argument de inhoud van een bestand bevat is moeilijk vast te stellen, dus het lijkt me het makkelijkst om te controleren of het een url is. Zo niet dan is het de inhoud van een bestand.

Welke php functie zou ik het beste kunnen gebruiken om te achterhalen of het een url is? Of weet iemand een functie om vast te kunnen stellen of iets de inhoud van een bestand is?

5 antwoorden

Gesponsorde links
Offline Wim - 30/12/2007 15:14
Avatar van Wim Crew algemeen 2 = 3 = [php]file_get_contents[php]

in je functie schrijf je het bestand gewoon weg?
  1. function schrijf ($name, $content)
  2. {
  3. $f = fopen($name, 'r+');
  4. fwrite($f, $content);
  5. fclose($f);
  6. }
  7.  
  8. schrijf('sitemasters.txt', file_get_contents('http://www.sitemasters.be/index.php'));


zo toch gewoon?
Offline Grayen - 30/12/2007 15:17
Avatar van Grayen PHP ver gevorderde Ja dat snap ik allemaal. Maar dat was dan ook niet wat ik wilde weten.

Wat jij nu vertelt is hoe ik bij alle drie de vormen die ik kan krijgen uiteindelijk opzelfde uitkom.

Mijn vraag is: Hoe kom ik te weten met welke van de drie ik te maken heb? Heb ik met mogelijkheid 1, 2 of 3 te maken?

Citaat:
Welke php functie zou ik het beste kunnen gebruiken om te achterhalen of het een url is? Of weet iemand een functie om vast te kunnen stellen of iets de inhoud van een bestand is?
Offline Wim - 30/12/2007 15:51
Avatar van Wim Crew algemeen je controleerd of het begint met http:// en de ge-PHP.net: trimde string geen spaties meer bevat. Dan controleer je of het bestand bestaat op de server, en je leest het uit.

Beter is uiteraard wel om je gebruiker een checkbox oid laten aan te vinken!
Offline Grayen - 30/12/2007 16:33
Avatar van Grayen PHP ver gevorderde Maar een lokaal bestand hoeft geen http:// te bevatten. En het gaat niet om de gebruiker, maar het is voor een class die ik aan het maken ben, om het gebruik van die class zo makkelijk mogelijk te laten.

Je weet dus geen functie om te achterhalen of iets een valide url is voor zowel lokale bestanden als niet lokale bestanden?
Offline Wim - 30/12/2007 16:48 (laatste wijziging 30/12/2007 16:51)
Avatar van Wim Crew algemeen PHP.net: file_exists

//edit:
bij een remote bestand ga je steeds een true-waarde terugkrijgen, omdat er altijd een bestand zal bestaan(meestal), desnoods is het een 404 page not found. Daarom kan je best remote_file_exists gebruiken: http://www.site...mp;id=1408

if(remote_file_exists($input) OR file_exists($input))
{
$content = file_get_contents($input);
}
else
{
$content = $input;
}
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.166s