Autor | Zpráva | ||
---|---|---|---|
Werewolf Profil |
#1 · Zasláno: 20. 1. 2009, 16:15:23 · Upravil/a: Werewolf
Ahoj, chtěl bych se zeptat, jestli se dá v podmínce (if) nějak nahradit libovolný počet znaků např. procenty (%). Tzn: Mám galerii. A když někdo klikne na odkaz na obrázek, chtěl bych zobrazit stránku, kde je pár řádek textu a ten obrázek.
Dělám to pomocí $_GET (main.php?location=imgs&list=n&path=/&img=DSCF4523.JPG). Jak tedy zapsat podmínku <?php if ($location == "imgs") { ... //nepodstatný text ... // zase nepodstatný text if ($img == "DSCF4523.JPG") { include("rsrc/photo.php"); }; if ($img == "TEN LIBOVOLNý POčET ZNAKů.JPG") { /* nepodstatný text */ }; }; ?> ? Předem dík za odpovědi. Werewolf |
||
bohyn Profil |
#2 · Zasláno: 20. 1. 2009, 16:32:06
Werewolf
Tak nejak mi to postrada smysl, ale pokud jede o zjisteni koncovky souboru tak toto: substr("TEN LIBOVOLNý POčET ZNAKů.JPG", strrpos("TEN LIBOVOLNý POčET ZNAKů.JPG", ".")); |
||
Werewolf Profil |
#3 · Zasláno: 20. 1. 2009, 16:38:36
Nechci zjistit koncovku. Jen chci zapsat podmínku:
/* Pokud je proměnná $img nějaký libovolný počet znaků s koncem ".JPG", udělat to a to... */ if ($img == "něco.JPG") { to a to }; |
||
Měsíček Profil |
#4 · Zasláno: 20. 1. 2009, 16:43:09
<?php if(!!strripos("soubor.JPG",".JPG")){ echo "True"; } else { echo "False"; } ?> |
||
Werewolf Profil |
#5 · Zasláno: 20. 1. 2009, 16:45:20
Měsíček
Díky, zkusím to... |
||
Werewolf Profil |
#6 · Zasláno: 20. 1. 2009, 16:50:56
Měsíček
Díky, Měsíčku... Mno, nechci být nevděčný, ale našel jsem jiný způsob, funguje mi... |
||
bohyn Profil |
#7 · Zasláno: 20. 1. 2009, 16:53:20
Měsíček
Tim jen zjistis jestli retezec obsahuje ".JPG" ale ne to jestli je na konci. "TEN LIBOVOLNý POčET ZNAKů.JPG.php" vyhovi take. |
||
Timy Profil |
#8 · Zasláno: 20. 1. 2009, 16:54:52
Na to stačí regulár, ne? Snad takový: ^(.*)\.jpg$
|
||
Timy Profil |
#9 · Zasláno: 20. 1. 2009, 16:57:20
Měsíček
Jaký mají smysl ty dvě negace? |
||
bohyn Profil |
#10 · Zasláno: 20. 1. 2009, 17:28:10
Timy
„Na to stačí regulár, ne? Snad takový: ^(.*)\.jpg$“ A nebo na to staci substr a strrpos. Tipni si co je rychlejsi „Jaký mají smysl ty dvě negace?“ zadny, melo by tam byt: strripos("soubor.JPG",".JPG") !== false |
||
Timy Profil |
#11 · Zasláno: 20. 1. 2009, 18:06:29
bohyn
„A nebo na to staci substr a strrpos. Tipni si co je rychlejsi “ Hmm, reguláry asi ne. Zase jsou čitelnější. |
||
wwww Profil * |
#12 · Zasláno: 20. 1. 2009, 20:24:45
a nestačilo by
<?php if(strripos("soubor.JPG",".JPG")){ echo "True"; } else { echo "False"; } ?> ? |
||
Měsíček Profil |
#13 · Zasláno: 20. 1. 2009, 20:29:54 · Upravil/a: Měsíček
V určitých případech ano, ale jsou výjimky kdy je výhodnější kontrolovat pomocí !== false viz dokumentace.
Reaguji na bohyna: "Tim jen zjistis jestli retezec obsahuje ".JPG" ale ne to jestli je na konci. "TEN LIBOVOLNý POčET ZNAKů.JPG.php" vyhovi take." Už je mi to jasný :) .. můj příklad byl vedle, omlouvám se. "A nebo na to staci substr a strrpos. Tipni si co je rychlejsi " Jelikož se kloubí dvě funkce, možná by zde byl rychlejší [R] výraz. "zadny, melo by tam byt: " Podle dokumentace ano. Reaguji na Timyho: "Jaký mají smysl ty dvě negace?" Asi takový jako znak ^ ve tvém [R] výraze :-) |
||
Timy Profil |
#14 · Zasláno: 21. 1. 2009, 16:24:12
Měsíček
„Asi takový jako znak ^ ve tvém [R] výraze :-)“ No to moc nechápu. Já to jako opravdu nevím, nijak nerýpu :-). Kdy se projeví rozdíl mezi !!strripos a strripos? Nás v matematice učili, že not(not(A)) = A. |
||
Alphard Profil |
#15 · Zasláno: 21. 1. 2009, 16:55:34
Timy
IMHO myšleno tak, že ^ je také k ničemu, když ho následuje (.*) |
||
Timy Profil |
#16 · Zasláno: 21. 1. 2009, 17:02:44
Alphard
Aha, takhle :-). No jo, já to tam strkám ze zvyku. |
||
Časová prodleva: 15 let
|
0