- Apple Watch Sport - ez is csak egy okosóra
- iPhone topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Mobil flották
- Samsung Galaxy A56 - megbízható középszerűség
- Hetekig bírják töltő nélkül a Huawei sportórái
- Milyen okostelefont vegyek?
- Samsung Galaxy A54 - türelemjáték
- Yettel topik
- Apple iPhone 17 - alap
Ú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
- Apple Watch Sport - ez is csak egy okosóra
- Villanyszerelés
- A fociról könnyedén, egy baráti társaságban
- RAM topik
- iPhone topik
- Nintendo Switch 2
- Luck Dragon: Asszociációs játék. :)
- Battlefield 6
- M.2-es SSD-ből E1.S-est az Icy Box adapterével
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- További aktív témák...
- Eladó Nikon D40 minden tartozékával+fotós táska
- Teljesen új Samsung S21 FE 5G DS 5G 6/128GB Graphite eladó (bontatlan)
- Teljesen új Honor 90 5G DS 5G 8/256GB Emerald Green eladó (bontatlan)
- Nintendo Switch 2 újszerű állapotban
- Új 2K Gamer PC Ryzen 5 9600X/RTX 3070 Ti 8Gb/2x8Gb DDR5 6000Mhz/500Gb NVME SSD/2-3Év gari
- TELJES KÖRŰ IT BESZERZÉS
- HIBÁTLAN iPhone 12 mini 64GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3452
- Microsoft Surface Laptop 5 13,5" Fekete i7-1265U 16GB 512GB magyarbill 1 év garancia
- AKCIÓ! Apple MacBook Pro 16 M4 Max 36GB RAM 1TB SSD macbook garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 12 Pro Max 256GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3375, 100% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest