downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

NULL> <object
Last updated: Fri, 13 Nov 2009

view this page in

resource

resource türünde bir değişken harici bir özkaynağa bir gönderim içeren özel bir değişkendir. Özkaynaklar özel işlevler tarafından oluşturulur ve kullanılırlar. resource türüyle ilişkilendirilebilen özkaynakların ve özel işlevlerin bir listesini eklerde bulabilirsiniz.

Bilginize: resource türü PHP 4'ten itibaren mevcuttur.

Ayrıca, get_resource_type() işlevine de bakınız.

resource türüne dönüşüm

Açık dosyalara, veritabanı bağlantılarına, resim tuval alanlarına ve benzerlerine birer tanıtıcı sağlayan değişkenleri resource türüne dönüştürmenin bir anlamı yoktur.

Özkaynakları serbest bırakmak

PHP 4'ün Zend Motoru sayesinde gönderimsiz kalan özkaynaklar özdevinimli olarak saptanarak bunlara ayrılan bellek çöp toplayıcı tarafından serbest bırakılmaktadır. Bu sebeple bir özkaynağa ayrılan belleği serbest bırakmak ihtiyacı nadiren ortaya çıkar.

Bilginize: Kalıcı veritabanı bağlantıları bu kuralın bir istisnasıdır. Çöp toplayıcı tarafından yok edilmezler. Bu konuda daha ayrıntılı bilgi edinmek için kalıcı bağlantılar bölümüne bakınız.



NULL> <object
Last updated: Fri, 13 Nov 2009
 
add a note add a note User Contributed Notes
resource
wetmonkey__ at at __gmail dot com
16-Dec-2008 12:17
Resources are commonly used to iterate through a mysql or file handle.
example

<?php
while($row = mysql_fetch_row($resource)){
  echo
$row[0] ;
}
?>

It's possible to fake this treatment.

<?php
class fakewhile{

public
$arrayCount;
public
$arrayCounter;

function
setArrValues(){
  
$this->arrValues = array(0 =>array("apple","artichoke","apricot"),1 => array("bears","dogs","cats"));
 
$this->arrayCounter = 0;
 
$this->arrayCount = count($this->arrValues);
}

function
outputValues(){
/*
 * Anything until the if statement is evaluted one more
 * time then the array count value
 */
 
$arrayInfo = $this->arrValues;
 
$arrCounter = $this->arrayCounter;
 if(
$arrCounter > $this->arrayCount){
  return
false;
 }
 
$endCounter = $arrCounter+1;
 
$this->arrayCounter = $endCounter;
 return
$arrayInfo[$arrCounter];
}

}

$fw = new fakewhile();
$fw->setArrValues();
while(
$row = $fw->outputValues()){
   
print_r($row);
}
?>

Hopefully will get someone started on completing a complete application.
adrian dot dziubek at gmail dot com
07-Jul-2008 03:55
I spent an hour trying to create mock setup for testing SQL queries. The explanation here, that a resource contains file handlers and therefore there is no sense in trying to create one is lame. Being unable to redefine functions, creating a fake resource was the second thing I tried to put test in place, but looking at the search results, I see I'm the first one to try... For me it looks like security by obscurity.
evildictaitor at hotmail dot com
16-Aug-2004 05:25
In response to yasuo_ohgaki, the reason for the inability of the $_SESSION[] variable to hold references is because a session is just a serialize()'d version of it's member variables saved under a unique filename, with this filename following the user around.

$_SESSION[] is therefore limited by the constraints of the serialize() function

Although this is not <i>strictly</i> true, ($_SESSION does some handling to convert messy variables (e.g. "s and ;s)) it cannot store resources due to the serialise() function's dependancy
isaac at chexbox dot com
22-Jun-2002 08:37
For the the oblivious: An example of a resource would be a mysql database connection.

$result = mysql_connect("localhost", "username", "pass");
//$result variable is a resource.

print $result;
//will print: Resource ID#1, or something similar

NULL> <object
Last updated: Fri, 13 Nov 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites