Hirdetés
- Yettel topik
- Google Pixel 9 Pro XL - hét szűk esztendő
- Samsung Galaxy Watch7 - kötelező kör
- Poco X8 Pro Max - nem kell ide sem bank, sem akkubank
- Minden a BlackBerry telefonokról és rendszerről
- Xiaomi 17 Ultra - jó az optikája
- Mától Huawei okosórákkal is lehet érintésmentesen fizetni
- Microsoft Rewards
- One mobilszolgáltatások
- Samsung Galaxy S26 Ultra - fontossági sorrend
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
PumpkinSeed
#14599
üzenetére
A kódod több szempontból is rossz:
$fp = fopen('$DOCUMENT_ROOT/../gem.txt','ab');
Mivel sima aposztrófot használsz, a $DOCUMENT_ROOT nem fog behelyettesítődni, tehát vagy konkatenáld, vagy használd az idézőjelet (de inkább előbbi a kód jobb olvashatósága érdekében).
Aztán: 'ab' módban nyitod meg a fájlt, ebből az 'a': "Open for writing only; place the file pointer at the end of the file. If the file does not exist, attempt to create it.", 'b' a binary mode. Az 'a' itt esetedben nem igazán indokolt, mivel egyszerű olvasást hajtasz végre. A binary mode biztos kell neked?Ezenkívül ezt csinálod:
$i = 0;
while (!feof($fp)) {
$szoveg[$i] = fgetc($fp);
$i++;
echo $szoveg[$i];
}itt az $i változót megnöveled, és AZUTÁN íratod ki a $szoveg tömb i-vel indexelt tartalmát. Magyarul az echo-nak nyilván még az $i++ előtt kéne szerepelnie.
Meg ellenőrizni kéne, hogy a megnyitás sikeres volt-e (elég egyszerű: a while-t és fclose-t egyszerűen berakod egy if($fp) blokkba), sikertelen megnyitás utáni fclose warningot okoz. Igaz, sikertelen fopen is azt okoz, ezért azt speciel érdemes lehet elnyomni @ karakterrel, VAGY még a megnyitási kísérlet előtt vizsgálni, hogy létezik-e egyáltalán a fájl (file_exists()).
Ez egyébként csak gyakorlás? Mi a konkrét célod?
==================================================
(#14600) Athlon64+ :
"Karaktert nem lehet indexelni."
+ (#14602) Athlon64+ :
"Akor ne indexeld a beolvasott karaktert?!
"
Mi az, hogy karaktert nem lehet indexelni? A kódja teljesen jól működne, ha jól használná. Sehol nem is indexeli a karaktereket, egyszerűen a karaktereket egy külön tömbbe rakja, aminek az indexét az $i adja. -
Peter Kiss
őstag
válasz
PumpkinSeed
#14599
üzenetére
Karaktert olvasos, és nem sort/karakterláncot. Karaktert nem lehet indexelni. Ha kell a fájl egész tartalma:
<?php
echo file_get_contents($_SERVER['DOCUMENT_ROOT'] . '/../gem.txt');Ez string-ként beolvassa az egészet, azt pedig már lehet indexelni.
Új hozzászólás Aktív témák
- Samsung Galaxy S24 - Titanium Black - 8/256GB
- Dell Latitude Precision Üzleti gépek, 2-in-1 gépek, 3-11. gen.
- Intel Core i5-9500 / i7-8700 / i7-9700 /i5-10500T /i7-10700 processzorok- számla, garancia
- MSI Pulse 15 B13VFK i7 / RTX 4060 140W / QHD 165Hz 16GB DDR5 1 TB SSD
- HP ZBook Fury 17 G8 i7-11800H 32 GB RAM 1TB SSD NVIDIA RTX A3000 Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
"

