Autor | Zpráva | ||
---|---|---|---|
crea Profil * |
#1 · Zasláno: 11. 10. 2009, 10:04:52
Zdravím, pomocí curl získávám hlavičku vzdáleného souboru. Nějakým způsobem bych z ní potřeboval získat velikost toho souboru. S preg_match_all se nemůžu domluvit :-((
HTTP/1.1 200 OK Date: Sun, 11 Oct 2009 07:57:55 GMT Server: Apache Last-Modified: Mon, 31 Dec 2007 22:20:13 GMT ETag: "7b0773ab-4d5-72ab4140" Accept-Ranges: bytes Content-Length: 1237 Connection: close Content-Type: image/gif GIF Script vrátí int 1237 Předem děkuji |
||
Alphard Profil |
#2 · Zasláno: 11. 10. 2009, 10:16:25
preg_match_all("~Content-Length: (\d+)~", $a, $b); |
||
crea Profil * |
Díky, ale nějak mi to nefunguje. Získávám vůbec tu hlavičku správně?
$url = "http://file..."; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_HEADER, 1); $result= curl_exec ($ch); if(!preg_match('~Content-Length: ([\d]+)\s~',$result,$match)) exit('Neznámá velikost.'); echo $filesize = (int) $match[1]; curl_close ($ch); Moderátor Alphard: Vkládejte prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
|
||
Alphard Profil |
#4 · Zasláno: 11. 10. 2009, 11:29:15
Než to nějak studovat, bude jednodušší, když na šestý řádek vložíte echo $result; a zkontrolujete výsledek.
V dalším kroku potom výpis print_r($match); poskytne dobrý přehled o výsledku hledání. |
||
crea Profil * |
#5 · Zasláno: 11. 10. 2009, 11:37:58
echo $result; //vrati 1 print_r($match); //vrati Array ( [0] => Array ( ) [1] => Array ( ) ) Vážně nevím, kde je problém :( Ještě mám problém s tím, že to nestahuje a nevrací pouze hlavičku, ale celý soubor, nevíte prosím proč? HTTP/1.1 200 OK Date: Sun, 11 Oct 2009 09:34:23 GMT Server: Apache Last-Modified: Mon, 31 Dec 2007 22:20:13 GMT ETag: "7b0773ac-846-72ab4140" Accept-Ranges: bytes Content-Length: 1237 Connection: close Content-Type: image/gif GIF89a�J��N#���Їq���y���"��ʨ&����Ĺ�n[㪖�oL��↳���ú,����M5�)�3���������������������������ֵ��.�0�����̮�����ʘ�幧�}�>c���������Ѡ6������������������������������������������������T��!�,�J��pH,�Ȥ2)X:�ШtJ�Z�X((��z��xކ��z�n?A�3�M���Rx(������dzq!}����Ip��g��~���u(����{������_��� �����������������!���ˆ��������� ϡ�ѣ���������w �����疉������$�a^=`�M�f�ص $LHQ�3��WN�-�Ψ�P@�I�,@�2A��̨aGQ��h�d���O���Ҵ��9�!)���C��� �<�5�9� �ɩ\���$AVl��I7�ݥLz� ��Ԣl��x��[L��f�����BZ!�����`��& F|o���S:;����ON��+��͛�z�옔_����ڎ�a�uw���n�{)���6���R�px��X�V>�=;�r�%.V ���nW�3��O v����O���:����W�� ���gZ~�um'_O`�ZE$�]U:��_��[�&��� �-�Z.|��x�9�^t�(�R$0�H��_��dh�݃�H�Bt� ?D)��!�D.�PN9%$LA�^N��L��eJ��Pt�攝�w��4JȢ)v��f>@�iG��'�Q�� Z&�N<�藑:ʉ�w"�]�d�䡓�Ё��,��R.A��V������ �� �F��$��eI�ꫠI�*l��"�(��$�+��X���D˚�D��vK緈.��.L����E�%��� J�j�<(�D(kf���o�� 0�?<WA�I���L���T���G��C���Ȋ3G�ւX�\�O���j�`�sv-��n� �TR|�ަ�Q[f�J�MD�RGa6�FeB�� >ɍ�u��x�m�̩��K̩�Ě#��%#��>�Q�)����:�+�I�GH>���Ώ�~��������{\��Q3߯��+!}��סc�SQv�Q_\��Q����#�]���(��mݓ�ކ��iiz�K`��W9�-e�_�$�e�U�j�ޠ�7���Y7C�k3@p*��PU��� �á�L�>�i��C�j����6����tOa�s��� �0}v�O�h;$B�U_|��r��d+l�wd���.�Ip��ZH��VVdC|lƆ��p�K��:b1��qs?�1�K��@�9!������;�]��m2��̈����}K#�$���k�h�@W2�3��(�V�(%Mx^����2(���s�.�2|��JS��<�}�o?Хև��<���9�5��F:�1���r�O��$QX]����aE!ۛ�z�E0�0T��V=0OD-����p�� �~�6�юrtk� <�%J�u�%�ߤ�)a��i��4�e��!,�0���J"�1`s_P�'ז�S B%�ԦL��c�HA�1����YCQk%�JM �O(U�9��*o�D0k�n���kI@�z��CxS�Z��GUU��&,|3j0�K��$H�)�,�"u(�C�ie��>Z�9�[(tX�C��� ���(����-�D�u�' xl�[�@RvD�j��Y$X��4�%�ڵ�5t��\��L[�f�AZ&����=�Ơ�Z!X0Hc^���� �A���b����$�2�����.���=��3�[PkQ¨W��0ba�@�#,��)`�64 �t���py!���O��`�� A; |
||
Alphard Profil |
#6 · Zasláno: 11. 10. 2009, 11:49:41
crea:
„echo $result; //vrati 1“ Něco podobného jsem tak trochu očekával. Viz curl_exec(): Returns TRUE on success or FALSE on failure. However, if the CURLOPT_RETURNTRANSFER option is set, it will return the result on success, FALSE on failure. Takže zkuste doplnit: curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); |
||
crea Profil * |
#7 · Zasláno: 11. 10. 2009, 12:23:20
Mockrát vám děkuji za pomoc. Funguje to
|
||
crea Profil * |
#8 · Zasláno: 11. 10. 2009, 16:01:47
Mohl by mi ještě někdo prosím parsovat tohle?
<td>Zbyva:</td><td align=right><b><script>document.write(setzeTT(""+Math.ceil(9952779/1000)));</s cript> b</b></td> Potřebuji získat hodnotu 9952779 Předem děkuji |
||
crea Profil * |
#9 · Zasláno: 11. 10. 2009, 17:30:10
vyřešeno :-)
|
||
Časová prodleva: 15 let
|
0