Ú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.
Új hozzászólás Aktív témák
- Motoros topic
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- DVB-T, DVB-S (2), DVB-C eszközök
- Nintendo Switch 2
- WLAN, WiFi, vezeték nélküli hálózat
- Autós topik
- Abarth, Alfa Romeo, Fiat, Lancia topik
- Házimozi belépő szinten
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Apple iPhone 7 Plus 32GB, Kártyafüggetlen, 1 Év Garanciával
- Felújított számítógépek/merevlemezek Számlával, garanciával! Ingyen Foxpost!
- Samsung Galaxy A54 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A54 5G , 8/128 GB , Kártyafüggetlen
- Xiaomi Redmi Note 13 Pro 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged