2009-05-08 15 views

cevap

4

b Sana Perl paketi/paketten işlevlerine eşdeğer soruyorsunuz düşünüyorum.

+0

Bu benim aradığım tam olarak ne olduğunu. –

1

PHP'de ikili bir dizi diye bir şey yoktur. Bayt akışları gerektiren tüm işlevler dizeler üzerinde çalışır. Tam olarak yapmak istediğin nedir? Eğer bir dize belirli bir bölümünü erişmeye çalışıyorsanız

1

Eğer olduğu gibi bir dizi gibi davranabilirsiniz.

$foo = 'bar'; 
echo $foo[0]; 

çıkışı:

+2

dize erişimi bu tür için, ben (aksi takdirde başka kodunuzu korumak herkesin defol kafa karıştırıcı risk) küme ayracı notasyonu tercih olduğuna inanıyoruz. Örneğin: Yanılmıyorsam $ foo {0} – EvanK

+1

, bunun için Büyük parantez notasyonu PHP önerilmiyor 6 – McAden

+1

Ah, işte burada: http://us.php.net/language.types.string başlığı altında "Not" - – McAden

1

Diyelim ki Stringa = "Merhaba" ikiliye $ dönüştürmek istediğiniz varsayalım: Eğer durum buysa, ben PHP paketi/paketten fonksiyonları bakmak önermek .

Önce ord() işleviyle ilk karakteri alın. Bu, ondalık olan karakterin ASCII değerini verecektir. Bu durumda Şimdi 72.

DEC2BIN() fonksiyonu ile ikili dönüştürmek olduğunu. Ardından bir sonraki işleve geçin. Bu işlevlerin http://www.php.net adresinde nasıl çalıştığını bulabilirsiniz.

VEYA Bu kod parçasını kullanın:

<?php 
    // Call the function like this: asc2bin("text to convert"); 
    function asc2bin($string) 
    { 
     $result = ''; 
     $len = strlen($string); 
     for ($i = 0; $i < $len; $i++) 
     { 
      $result .= sprintf("%08b", ord($string{$i})); 
     } 
     return $result; 
    } 

    // If you want to test it remove the comments 
    //$test=asc2bin("Hello world"); 
    //echo "Hello world ascii2bin conversion =".$test."<br/>"; 
    //call the function like this: bin2ascii($variableWhoHoldsTheBinary) 
    function bin2ascii($bin) 
    { 
     $result = ''; 
     $len = strlen($bin); 
     for ($i = 0; $i < $len; $i += 8) 
     { 
      $result .= chr(bindec(substr($bin, $i, 8))); 
     } 
     return $result; 
    } 
    // If you want to test it remove the comments 
    //$backAgain=bin2ascii($test); 
    //echo "Back again with bin2ascii() =".$backAgain; 
?>