Results 1 to 11 of 11
Thread: Ïðîáëåì ñ php, preg, unicode
Hybrid View
-
6th February 2010 23:26 #1
Ïðîáëåì ñ php, preg, unicode
Äíåñ ïðåèíñòàëèðàõà ñúðâúðà, íà êîéòî êà÷âàì åäèí ñàéò è ìè ïðàâè âïå÷àòëåíèå, ÷å preg-ôóíêöèèòå ñè ïðîìåíèõà ïîâåäåíèåòî.
Äî äíåñ òîâà ðàáîòåøå:
Ñåãà ñïðÿ äà ïðîïóñêà ãëàâíè áóêâè, êîåòî çíà÷è, ÷å ìîäèôèêàòîðà i âå÷å íå ñðàáîòâà.Code:preg_match('/^[à-ÿ]*$/ui', $val);
 ìîìåíòà ñúì ãî ïà÷íàëà òàêà, êîëêîòî äà ðàáîòè ñàéòà:
Íî ìè å íåñïîêîéíî. È ëþáîïèòíî.Code:preg_match('/^[à-ÿÀ-ß]*$/u', $val);
Äàéòå èäåÿ êàêâî ñå å èçãóáèëî?
Ìèñëÿ, ÷å å èëè ëîêàëà íà îïåðàöèîííàòà ñèñòåìà èëè ïúê íÿêîé internal_encoding íà ñàìîòî php.
Çà ñåáå ñè èìàì íÿêàêâî îáÿñíåíèå, êîåòî ìîãà äà ñïîäåëÿ.
Íî íå çíàì êàê å íàé-ïðàâèëíî äà ïðîöåäèðàì, äîêîëêîòî î÷àêâàì è íà äðóãè ìåñòà äà âúçíàò ïðîáëåìè, êîèòî îùå íå ñúì çàáåëÿçàëà.
-
6th February 2010 23:39 #2Registered User
Join Date: Dec:2003
Posts: 2,817
Êàêâà å âåðñèÿòà íà php-òî ïðåäè è ñåãà? Ìàé íÿêîè âåðñèè èìàò ïðîáëåì ñ preg_match è utf8
Gigabyte DS3P, E4400@9x333, 2x2Gb Super T@1000Mhz, Gigabyte GTX460OC 768Mb
-
6th February 2010 23:50 #3
5.2.10
Äðóã å ïðîáëåìà.
Àç ñè ìèñëÿ íåùî òàêîâà:
preg-ôóíêöèèòå ïúðâî èçïúëíÿâàò íÿêàêâà php-ëîãèêà è ñëåä òîâà äàâàò çàäà÷à íà pcre-ìîäóëà.
Êîãàòî ðàáîòÿ ñ óíèêîä-ñòðèíãîâå, òðÿáâà äà óêàæà òîâà ñ ìîäèôèêàòîðà /u.
Òîé îáà÷å èçâåñòÿâà åäèíñòâåíî pcre, à ïðåç òîâà âðåìå php íå çíàå, ÷å ñòàâà äóìà çà óíèêîä.
Ñïîðåä ìåí ïðîáëåìúò å òî÷íî â òîâà è íåùàòà ñà îìàçàíè îùå ïðåäè äà ñòèãíàò äî ìàøèíàòà çà ðåãåêñèòå.
À php íàó÷àâà åíêîäèíãà îò ÎÑ, îñâåí àêî íå ìó å óêàçàíî íåùî äðóãî...
È ñåãà ñå ÷óäÿ
äàëè òðÿáâà äà ñè èãðàÿ ñ LC_CTYPE
èëè äà ïèïàì íÿêîé îò òèÿ:
iconv.internal_encoding -> ISO-8859-1 -> ISO-8859-1
mbstring.internal_encoding -> no value -> no valueLast edited by Flower; 7th February 2010 at 00:15.
-
7th February 2010 00:10 #4Registered User
Join Date: Dec:2003
Posts: 2,817
Âñúùíîñò ìàé íå âåðñèÿòà íà php-òî àìè âåðñèÿòà íà PCRE Library ìîæå äà ïðàâè òîçè ïðîáëåì.
Gigabyte DS3P, E4400@9x333, 2x2Gb Super T@1000Mhz, Gigabyte GTX460OC 768Mb
-
7th February 2010 00:17 #5
PCRE Library Version: 6.6 06-Feb-2006
Òóê íå çíàì äîáðå ëè å?
-
7th February 2010 00:40 #6
Çà êîé õîñòèíã ñòàâà âúïðîñ?
Õîñòâàë ñúì è õîñòâàì â íàé-ðàçëè÷íè óñëîâèÿ è âåðñèè è OS-îâå, òàêúâ ïðîáëåì íå ñúì èìàë íèêîãà, è íå ñúì áàðàë èçîáùî íèùî ïî pcre èëè äðóãî. Ñïîðåä ìåí ïðîáëåìúò å íÿêúäå äðóãàäå. Íàïèñàëà ëè ñè áúðç òåñòîâ êîä, êîéòî äà âúçïðîèçâåäå ïðîáëåìà, îòòàì äà ïî÷íåì. Çàùîòî ìîæå ïðèìåðíî ñàìî äà ñè ìèñëèø, ÷å preg_ ïðè÷èíÿâà äàäåíî ïîâåäåíèå, ðåäíî å äà çíàåì îòêúäå è êàê ñúäèø, êàêâî å ïðèëîæåíèåòî è ò.í.
Õì.. êàêâà å òàçè âåðñèÿ íà pcre, àç ñúì ñ 5.2.12, è âåðñèÿòà ìè å 7.9.2009. íåùî ñè.
-
7th February 2010 00:51 #7
Õîñòèíãúò ñè å íàø, íå âÿðâàì äà òè ãîâîðè íåùî èìåòî ìó.
Ïðîñò òåñòîâ êîä íÿìàì, ïîíåæå äíåñ è óòðå íÿìàì îñîáåíî óäîáåí äîñòúï äî íèùî.
Íî âñå ïàê ñúì ñèãóðíà, çàùîòî âúïðîñíèÿ èçðàç ìè âàëèäèðà äàäåí èíïóò.
Íÿìà íèêàêâà äðóãà ëîãèêà òàì.
Îïèòàõ äà âúâåäà "Ïåí÷î" - èçõâúðëè ìå. Ñ ìàëêè áóêâè ìèíà.
Ïðîìåíèõ èçðàçà ïî íà÷èíà, êîéòî ïîêàçàõ è âå÷å ïðèåìàøå è ãëàâíè è ìàëêè êèðèëèøêè áóêâè.
Ïðåäè åäèí äåí âñè÷êî ðàáîòåøå èäåàëíî è ñúñ ñòàðèÿ èçðàç.
Çàòîâà ñè èãðàÿ íà "Îòêðèéòå ðàçëèêèòå".
Àêî íÿêîé òåñò áè äàë ïîâå÷å èíôî, ùå ãî ñëîæà, ðàçáèðà ñå.
Îòíîñíî âåðñèÿòà íà PCRE - âèäÿõ ÿ ñ phpinfo().
Ñðàâíÿâàì ñ äàííèòå îò ìîÿ õîñòèíã è íàèñòèíà òàì èìàì 5.2.12 ñ PCRE 7.9 2009-04-11.
À êàòî ãëåäàì ñåãàøíèòå íàñòðîéêè, ñúìíÿâàì ñå, ÷å è mb-ôóíêöèèòå ùå ðàáîòÿò ñâÿñòíî.Last edited by Flower; 7th February 2010 at 00:57.
-
7th February 2010 01:12 #8
Ìîìåíò. "ìîÿ õîñòèíã", "òàì", êúäå å âåðñèÿòà 6.6 è êúäå 7.9 ? Êúäå ãúðìè è êúäå íå (àêî íå ãúðìè íÿêúäå).
Âèæ äàëè "à" íå ñè ãî ïèñàëà íà ëàòèíèöà ïðèìåðíî, èëè íÿêîÿ òàêàâà ãëóïàâà ãðåøêà. Ïðè ìåí ðàáîòè, íîðìàëíà ðú÷íà èíñòàëàöèÿ ïîä Windows, utf-8 å äåôîëòíèÿ ÷àðñåò. Âèæ çà âñåêè ñëó÷àé è ôîðìàòà êàêúâ ÷àðñåò î÷àêâà ñ accept-charset, è äàëè ñëó÷àéíî íîâèÿ ñåòúï êúäåòî ãúðìè, íå å ñåòíàò äà âðúùà ðàçëè÷åí Content-type õåäúð êúì áðàóçúðà, ïðèìåðíî âèíäîâñ-1251, è íåùî äîïúëíèòåëíî òàêîâà. Ñëîæè accept-charset="UTF-8" çà ïðîáà âúâ ôîðìàòà.
-
7th February 2010 01:19 #9
Íà ëè÷íèÿ ìè õîñòèíã íåùàòà ñà ñ íîâèòå âåðñèè.
Íà ñëóæåáíèÿ ñúðâúð (Ëèíóêñ) å âåðñèÿ 6.6 è èìà ïðîáëåì.
Íà ñëóæåáíàèÿ ìè êîìïþòúð, êîéòî å ñ Windows, ñúì ñåòíàëà êîïèå îò ïðîåêòà, êîåòî ñè ðàáîòè êîðåêòíî êàêòî è ïðè òåá. Íî òàì ëîêàëèòå (ïðåäïîëàãàì è ïðè òåá) ñà íà Áúëãàðèÿ. À òîâà íå å áåç çíà÷åíèå.
Òîêó-ùî èçïðîáâàõ öÿëàòà àçáóêà, íå å ãðåøíî âúâåäåí ñèìâîë.
Ùå íàïèøà è ÷èñò òåñò.
Ñåãà îñìèñëÿì îñòàíàëîòî, êîåòî êàçâàø...
Òàêà.
 õåäúðà íà ðèêóåñòà âèæäàì:
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
(íî òîâà ñèãóðíî å îò íàñòðîéêè íà áðàóçåðà?)
 õåäúðà íà ðåñïîíñà:
Transfer-Encoding: chunked
Content-Type: text/html
äðóãî èíòåðåñíî òàì íå çàáåëÿçâàì
------
Íàïðàâèõ åäèí ïðîñò òåñò:
Ïîëó÷àâàìCode:if ( preg_match('/^[à-ÿ]*$/ui', 'ÿß') ) { error_log('qQ: cyr'); } else { error_log('qQ: HE'); } if ( preg_match('/^[à-ÿ]*$/ui', 'ÿÿ') ) { error_log('qq: cyr'); } else { error_log('qq: HE'); }
qQ: HE
qq: cyrLast edited by Flower; 7th February 2010 at 10:08.
-
7th February 2010 11:42 #10
Àìè êàòî ãëåäàì changelog íà PCRE, ñëåä âåðñèÿ 6.6 èìà íÿêîëêî îïðàâåíè áúãà ñ caseless ìà÷èíãà. Âåðîÿòíî å íàèñòèíà ïðîáëåìúò äà å â ñåòúïà íà ñúðâúðà. Íå ñúì ñèãóðåí íî ñè ìèñëÿ, ÷å äîðè â 5.2.10 áè òðÿáâàëî äà íå å òîëêîâà ñòàðà âåðñèÿòà íà pcre. Àç îò 5.2.6 ñêî÷èõ íàïðàâî íà 5.2.12. Íî è ïðåäè òîâà íå ñúì èìàë òîçè ïðîáëåì.
-
7th February 2010 11:54 #11
Ìíîãî å âåðîÿòíî äà ñè ïðàâ.
Àç íå çíàì äî ñåãà êàêâà å áèëà âåðñèÿòà íà áèáëèîòåêàòà.
À ñúùî íå ñúì íàÿñíî êàê ñòàâà âêëþ÷âàíåòî é â php, êîãàòî å Ëèíóêñ (CentOs â ñëó÷àÿ).
Äàëè òðÿáâà äà ñå ïðåêîìïèëèðà èëè å ïî äðóã íà÷èí.
Íî ïðîäúëæàâàì äà ðîâÿ èç íåòà. Èàìå êúñìåò, ÷å ðóñíàöèòå ïîëçâàò íàøàòà àçáóêà
Àêî èìà ðàçâèòèå, ùå ïèøà. Ìîæå íà íÿêîãî äà ñïåñòè âðåìå.
Ñïîðåä òîâà òóê:
http://bg2.php.net/manual/en/pcre.installation.php
pcre ñè èäâà çàåäíî ñ php è çà 5.2.10 áè òðÿáâàëî äà å ïîíå âåðñèÿ 7.8
Íå çíàì ïðè íàñ êàê (è çàùî) ñà ñëîæèëè 6.6.
Ïðåäàâàì ñå.Last edited by Flower; 7th February 2010 at 15:23.




Reply With Quote
Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè