Перейти к контенту

преобразование $ #@ !


Рекомендуемые сообщения

я уже скоро пробью лбов монитор, ибо php не знаю...

помогите. значит у меня есть строка, допустим

$TX

в ней хранится текст вида

asdfgh654321^%$#@!

 

мне нужно преобразовать строку в исходный человеческий текст, т.е.

asdfgh654321^%$#@!

 

HEPL

 

тьфу гад, форум пропарсил исходную строку....

значит было

6; #@ 3;

(без пробелов)

Ссылка на комментарий
Поделиться на других сайтах

Вобще, допустим при авторизации: в поле вводится текст (пароль) (ну и соответственно в переменную $TX допустим), при этом символы вроде $ и ! заменяются на их Html-эквиваленты - $ ; ! ;

мне надо, чтобы в этой переменной Html-эквиваленты были обратно заменены на символы. то есть преобразовать всякие $ ; ! ; в $ и !.

Ссылка на комментарий
Поделиться на других сайтах

да мне хоть как. только подскажите.. А то ведь мои знания PHP основаны на копи-пейст с анализом того, чего я копи-пейстю... А команд я не знаю :D Понимаю только логику.
Ссылка на комментарий
Поделиться на других сайтах

и это что мне, под каждый символ отдельную строку что ли писать?

гд можно разжиться информацией о таких "заменах" клавиатурных символов? может я чего-то пропустил...

Ссылка на комментарий
Поделиться на других сайтах

str_replace($array,$array,$array) - вполне нормальная конструкция и она вполне нормально сработает.
Ссылка на комментарий
Поделиться на других сайтах

и как надо задать первый и второй массивы?

 

p.s. IBR'овцы - поделитесь просто куском парсера вашего форума... у вас то он парсит коды в символы......

 

должно помочь

 

$entities = array(
'nbsp' => 160, 'iexcl' => 161, 'cent' => 162, 'pound' => 163,
'curren' => 164, 'yen' => 165, 'brvbar' => 166, 'sect' => 167,
'uml' => 168, 'copy' => 169, 'ordf' => 170, 'laquo' => 171,
'not' => 172, 'shy' => 173, 'reg' => 174, 'macr' => 175,
'deg' => 176, 'plusmn' => 177, 'sup2' => 178, 'sup3' => 179,
'acute' => 180, 'micro' => 181, 'para' => 182, 'middot' => 183,
'cedil' => 184, 'sup1' => 185, 'ordm' => 186, 'raquo' => 187,
'frac14' => 188, 'frac12' => 189, 'frac34' => 190, 'iquest' => 191,
'Agrave' => 192, 'Aacute' => 193, 'Acirc' => 194, 'Atilde' => 195,
'Auml' => 196, 'Aring' => 197, 'AElig' => 198, 'Ccedil' => 199,
'Egrave' => 200, 'Eacute' => 201, 'Ecirc' => 202, 'Euml' => 203,
'Igrave' => 204, 'Iacute' => 205, 'Icirc' => 206, 'Iuml' => 207,
'ETH' => 208, 'Ntilde' => 209, 'Ograve' => 210, 'Oacute' => 211,
'Ocirc' => 212, 'Otilde' => 213, 'Ouml' => 214, 'times' => 215,
'Oslash' => 216, 'Ugrave' => 217, 'Uacute' => 218, 'Ucirc' => 219,
'Uuml' => 220, 'Yacute' => 221, 'THORN' => 222, 'szlig' => 223,
'agrave' => 224, 'aacute' => 225, 'acirc' => 226, 'atilde' => 227,
'auml' => 228, 'aring' => 229, 'aelig' => 230, 'ccedil' => 231,
'egrave' => 232, 'eacute' => 233, 'ecirc' => 234, 'euml' => 235,
'igrave' => 236, 'iacute' => 237, 'icirc' => 238, 'iuml' => 239,
'eth' => 240, 'ntilde' => 241, 'ograve' => 242, 'oacute' => 243,
'ocirc' => 244, 'otilde' => 245, 'ouml' => 246, 'divide' => 247,
'oslash' => 248, 'ugrave' => 249, 'uacute' => 250, 'ucirc' => 251,
'uuml' => 252, 'yacute' => 253, 'thorn' => 254, 'yuml' => 255,
'fnof' => 402, 'Alpha' => 913, 'Beta' => 914, 'Gamma' => 915,
'Delta' => 916, 'Epsilon' => 917, 'Zeta' => 918, 'Eta' => 919,
'Theta' => 920, 'Iota' => 921, 'Kappa' => 922, 'Lambda' => 923,
'Mu' => 924, 'Nu' => 925, 'Xi' => 926, 'Omicron' => 927,
'Pi' => 928, 'Rho' => 929, 'Sigma' => 931, 'Tau' => 932,
'Upsilon' => 933, 'Phi' => 934, 'Chi' => 935, 'Psi' => 936,
'Omega' => 937, 'alpha' => 945, 'beta' => 946, 'gamma' => 947,
'delta' => 948, 'epsilon' => 949, 'zeta' => 950, 'eta' => 951,
'theta' => 952, 'iota' => 953, 'kappa' => 954, 'lambda' => 955,
'mu' => 956, 'nu' => 957, 'xi' => 958, 'omicron' => 959,
'pi' => 960, 'rho' => 961, 'sigmaf' => 962, 'sigma' => 963,
'tau' => 964, 'upsilon' => 965, 'phi' => 966, 'chi' => 967,
'psi' => 968, 'omega' => 969, 'thetasym' => 977, 'upsih' => 978,
'piv' => 982, 'bull' => 8226, 'hellip' => 8230, 'prime' => 8242,
'Prime' => 8243, 'oline' => 8254, 'frasl' => 8260, 'weierp' => 8472,
'image' => 8465, 'real' => 8476, 'trade' => 8482, 'alefsym' => 8501,
'larr' => 8592, 'uarr' => 8593, 'rarr' => 8594, 'darr' => 8595,
'harr' => 8596, 'crarr' => 8629, 'lArr' => 8656, 'uArr' => 8657,
'rArr' => 8658, 'dArr' => 8659, 'hArr' => 8660, 'forall' => 8704,
'part' => 8706, 'exist' => 8707, 'empty' => 8709, 'nabla' => 8711,
'isin' => 8712, 'notin' => 8713, 'ni' => 8715, 'prod' => 8719,
'sum' => 8721, 'minus' => 8722, 'lowast' => 8727, 'radic' => 8730,
'prop' => 8733, 'infin' => 8734, 'ang' => 8736, 'and' => 8743,
'or' => 8744, 'cap' => 8745, 'cup' => 8746, 'int' => 8747,
'there4' => 8756, 'sim' => 8764, 'cong' => 8773, 'asymp' => 8776,
'ne' => 8800, 'equiv' => 8801, 'le' => 8804, 'ge' => 8805,
'sub' => 8834, 'sup' => 8835, 'nsub' => 8836, 'sube' => 8838,
'supe' => 8839, 'oplus' => 8853, 'otimes' => 8855, 'perp' => 8869,
'sdot' => 8901, 'lceil' => 8968, 'rceil' => 8969, 'lfloor' => 8970,
'rfloor' => 8971, 'lang' => 9001, 'rang' => 9002, 'loz' => 9674,
'spades' => 9824, 'clubs' => 9827, 'hearts' => 9829, 'diams' => 9830,
'quot' => 34, 'amp' => 38, 'lt' => 60, 'gt' => 62,
'OElig' => 338, 'oelig' => 339, 'Scaron' => 352, 'scaron' => 353,
'Yuml' => 376, 'circ' => 710, 'tilde' => 732, 'ensp' => 8194,
'emsp' => 8195, 'thinsp' => 8201, 'zwnj' => 8204, 'zwj' => 8205,
'lrm' => 8206, 'rlm' => 8207, 'ndash' => 8211, 'mdash' => 8212,
'lsquo' => 8216, 'rsquo' => 8217, 'sbquo' => 8218, 'ldquo' => 8220,
'rdquo' => 8221, 'bdquo' => 8222, 'dagger' => 8224, 'Dagger' => 8225,
'permil' => 8240, 'lsaquo' => 8249, 'rsaquo' => 8250, 'euro' => 8364
);

foreach ($entities as $entity => $charcode) {
$t = str_replace('&' . $entity . ';', '' . $charcode . ';', $t);
}

или можно ли применить таку конструкцию? если да, то какие должны быть массивы $entity, $charcode ?

 

Пожалуй тему можно закрывать, все как всегда нашел сам.. Поюзал поиск по коду форума и в нескольких местах нашел то, что мне надо

				$PWT = str_replace( "'"   , "'", $PWT );
			$PWT = str_replace( "!"   , "!", $PWT );
			$PWT = str_replace( "$"  , "$", $PWT );
			$PWT = str_replace( "|"  , "|", $PWT );
			$PWT = str_replace( "&"   , "&", $PWT );
			$PWT = str_replace( ">"	, ">", $PWT );
			$PWT = str_replace( "<"	, "<", $PWT );
			$PWT = str_replace( """  , '"', $PWT );

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.