kiterjesztés (pont+3betű) levágása
hi.
hogyan tudnám levágni egy karakterlánc végéról azt a 4 betűt?
mert a változókban nem lehet pont..... tehát ez nbem lehet:
próbálkoztam a MD5 hash el, de mivel a változó, elején nem lehet szám, ezért az nem jó.
szóval: ha tudtok valamit ami levág 4 karaktert a szöveg VÉGÉRŐL, vagy egy váltoró ELÉ be tud tenni egy _ et vagy egy x et, azt NAGYON SZÉPEN MEGKÖSZÖNNÉM:
■ hogyan tudnám levágni egy karakterlánc végéról azt a 4 betűt?
mert a változókban nem lehet pont..... tehát ez nbem lehet:
$valami.exe
tehát ezt kéne valami
re csinálni de több file van, ezért változó mhosszúságúak a nevek, ezért nem lehet beállítani hogy mondjuk x karaktert olvasson csak.próbálkoztam a MD5 hash el, de mivel a változó, elején nem lehet szám, ezért az nem jó.
szóval: ha tudtok valamit ami levág 4 karaktert a szöveg VÉGÉRŐL, vagy egy váltoró ELÉ be tud tenni egy _ et vagy egy x et, azt NAGYON SZÉPEN MEGKÖSZÖNNÉM:
ezt sikerült össze eszkábálnom de ez rossz!
echo "
<html>
<body bgcolor=\"4A4A4A\">
<TABLE border=\"1\">
";
include ("desc.php");
$konyvtar = 'letoltes/gta_int.img/'; // ez jó... valamire
$kiterjesztesek = 'zip'; // ezeket a kiterjesztéseket nézi; felsorolni őket szóközzel elválasztva kell
// -- innen programkód, békénhagyni tessék
$kiterjesztesek = '/('.implode('|', explode(' ', $kiterjesztesek)).')\z/i'; // reguláris kifejezés csinálása a kiterjesztésekből, mer' az jó
$filek = opendir($konyvtar); // könyvtár mögnyitása
while(($file = readdir($filek)) !== false) // könyvtár végigolvasása
if(preg_match($kiterjesztesek, $file)) // ha stimmt a regexp
$hess = md5 ($file);
$load = "x$hess";
echo "$load
<tr>
<td bgcolor=\"thistle\"><a href=\"$konyvtar/$file\" target=\"_blank\">$file</a></td>
<td bgcolor=\"#0080FF\"><a href=\"$konyvtar/$file.jpg\" target=\"_blank\">KÉP</a></td>
<td bgcolor=\"#FF0080\">"; print $load["edit"]; echo "</td>
<td bgcolor=\"orange\">"; print $load["place"]; echo "</td>
<td bgcolor=\"lightskyblue\"><B>"; print $load["rate"]; echo "</B></td>
<td bgcolor=\"mediumspringgreen\"><B>"; print $load["test"]; echo "</B></td>
</tr>
";
echo "
</TABLE>
</body>
</html>
";
?>
és itt a desc.php is:
// x.zip
$x99e11d4d74111ab0e26828127350db36 = array (
"edit" => "2ből3",
"rate" => "<FONT color=\"green\">10</FONT>/<FONT color=\"red\">0</FONT>",
"test" => "én te ő",
"place" => "tatabáááááááááááááááányaaaaaa",
);
// y.zip
$x5b02a88e33c061669910c31d2e599120 = array (
"edit" => "uuuuuuuuuuuuuu",
"rate" => "<FONT color=\"green\">5</FONT>/<FONT color=\"red\">5</FONT>",
"test" => "anyucim, anyucid, anyucija+a BEEdög :D",
"place" => "kukutyin",
);
?>
de ez a 2 file ugy rossz ahogy van :((((
Burgermeiszter Zoltán
re: ezt sikerült össze eszkábálnom de ez rossz!
igaz ;-)
--
üdv: kmm... ( http://kmm.hu )
basename
pont a változónévben
van egy olyan függvény, hogy get_defined_vars(), ami az éppen érvényes változó-térben definiált változókat adja vissza egy tömbben, szóval meg lehet vele nézni az összes épp' létező változókat:
re: Kiterjesztés (pont+3betű) levágása
ez alapján ki fogsz találni egy jó megoldást szerintem:
üdv: kmm... ( http://kmm.hu )
explode?
Explod-dal a pontok mentén szétszedni, és az utolsó elem a kiterjesztés. Mindegy, hány karakteres.
function tear_file($file) {
$file_parts = explode(".",$file);
$file_ext = $file_parts[count($file_parts)-1];
$file_namelength = strlen($file)-strlen($file_ext)-1;
$mytext["name"] = substr($file,0,$file_namelength);
$mytext["ext"] = strtolower($file_ext);
return $mytext;
}
?>
Üdv
Zoli
akkor explodéval is
bbalint
explode
--
üdv: kmm... ( http://kmm.hu )
hogyne
csak az explodé()t mérted vagy az implodé()val együtt? (mer' azér' nem mindegy)
bbalint
egyik se megy....... mindegy.
$hess = md5 ($file);
hogy tudok a hash elé beszúrni egy _ t?
az arrayos oldalt láttátok.
én a tömböket egy _hash al akarom jelölni ehhez kéne a _+hash...
segítsetek.... KÖSZI
Burgermeiszter Zoltán
ááá feladom
Burgermeiszter Zoltán
ááá feladom: jogos!
Egyébként:
$hess = '_'.md5 ($file);
Gyulus
strrpos
visszaadja a legutolsó előfurdulását a megadott stringnek, ami lehet egy pont is. a legutolsó előfordulás indexe pedig pont az a szám, ahány karakter van előtte.
pl: ha a pont indexe a 4, akkor a 0,1,2,3 indexű karakterek állnak előtte.
így a $result=substr($data,0,strrpos($data,".")); egész jó megoldásnak tűnik.
persze csak nekem, mert nem értek a reguláris kifejezésekhez. :]
bocs, ha már megoldódott a probléma, de gondoltam ez egy hasznos módszer.
Pont ezt akartam...
:)