Biz zend API kullanarak dışarı php bir php özü işlevi uygulayabilirsiniz

4 Cevap php

Php işlevi ayıklamak çağıran fonksiyonun yerel kapsam değişkenleri ekler. Nasıl aynı işi yapar, kendi php fonksiyonu özü yazabilirim?

4 Cevap

Ben saf-PHP bunu yapabileceğimi sanmıyorum: Bir işlev arayan değişkenlerine erişimi yok.

Bu geliştirmek için bir C uzantısı yazmak gerekir türden bir şey gibi görünüyor - orada PHP değişkenlerinin internals üzerinde daha fazla kontrole sahip olacaksınız.

(And I don't really see why you're trying to do that : why not just use the existing extract function ? )

PHPJS php gibi işlevleri içeren bir javascript kütüphanesi olduğunu, burada bir fikir edinebilirsiniz onun extract fonksiyonudur. I php zaten sağlar zaman neden kendi işlevi arıyor acaba, o söyledikten sonra.

Sadece eğlenmek için ise Tamam, bu mümkün:

<?php
$data=array('a' => 1, 'b' => 2);

foreach ($data as $name => $value) {
    ${$name} = $value;
}

echo $a;
?>

Ancak bazı sorunlar - $ veri, $ isim ve $ değeri ile ve bir fonksiyon içine alamaz çatışmalar gibi. Ama mümkün.

Evet bu mümkün,

i çok değerleri Döşeme gerektiğini özü işlevi şey daha gerekiyor, çünkü ben bunu neden nedeni

function extractArray($ar) {
        if(count($ar)>=1) {
            foreach($ar as $k=>$v) {
                $GLOBALS[$k] = (is_array($v)?$v:trim($v));
            }
        }
}

I just pas my $_GET, $_POST, and else arrays like this for e.g. $_GET['username'] = ' justnajm '; extractArray($_GET);

ve ben sadece yankı ve 'justnajm' yazacak