php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #6242 exit signal segmentation fault (11) with class object
Submitted: 2000-08-18 13:53 UTC Modified: 2000-08-19 09:21 UTC
From: nicolas dot prochazka at sansistor dot com Assigned:
Status: Closed Package: Scripting Engine problem
PHP Version: 4.0.1pl2 OS: Solaris 7
Private report: No CVE-ID: None
 [2000-08-18 13:53 UTC] nicolas dot prochazka at sansistor dot com
It' call to insert_Naire_fils that's running the :
exit signal segmentation fault (11) 

more exactly it 's : $tab_object[$i]->node()
php seems to not support member function call from array object .....

-----
<?

class Treebinaire {
	var $node;
	var $fg;
	var $fd;

	function Treebinaire($node = '',$fg = NULL,$fd = NULL) {
		$this->node=$node;
		$this->fg=$fg;
		$this->fd=$fd;
	}
		
	function node() {
		return $this->node();
	}
	
	function insert() {}


	function display($decalage) {
		print "<br>$decalage".$this->node;
		$decalage=$decalage.'-';
		if ($this->fg!=NULL) $this->fg->display($decalage);
		if ($this->fd!=NULL) $this->fd->display($decalage);
		}
}

class TreeNaire {
	var $node;
	var $fils;
	var $frere;
	
	function TreeNaire($node = '',$fils = NULL, $frere = NULL ) {
		$this->node=$node;
		$this->fils=$fils;
		$this->frere=$frere;
	}
	
	function node() {
		return $this->node();
	}
	
	function insertfils($fils) {
		$this->fils=$fils;
	}

	function insertfrere($frere) {
		$this->frere=$frere;
	}

	function display($decalage) {	
	// impression d'un arbre
		print "<br>$decalage".$this->node;
		$decalage=$decalage.'-';
		if ($this->fils!=NULL) {
		
			$this->fils->display($decalage);
			}
		$decalage=substr($decalage,1);
		if ($this->frere!=NULL) $this->frere->display($decalage);
		}

	
			
		

}


// Fonction travaillant sur les arbres mais pas des m?thodes ...
Function insert_Naire_fils($string_node,$fils,$tab_object) {
	for ($i=0;$i<sizeof($tab_object);$i++) { 
		print "<br>HERE:".$tab_object[$i]->node();
		//if ($tab_object[$i]->node()=="$string_node")  {}
			//$tab_object[$i]->insertfils($fils);
	}
}					
			





$feuille1 = new Treebinaire("feuille1");
$feuille2 = new Treebinaire("feuille2");

$fils1 = new Treebinaire("fils1",$feuille1,$feuille2);
$fils2 = new Treebinaire("fils2",$feuille1);

$pere = new Treebinaire("pere",$fils1,$fils2);

print "<h3>ARbre binaire</h3>";
$pere->display('');

$feuillen2  = new TreeNaire("feeille2",$fils1,$fils2);
$feuillen1 = new TreeNaire("feullen1",NULL,$feuillen2);
$frere2 = new TreeNaire("frere2",$feuille2);
$frere1 = new TreeNaire("frere1",$feuille1,$frere2);
$filsn1 = new TreeNaire("filsn1",$feuillen1,$frere1);
$peren = new TreeNaire("pereN",$filsn1);

$tab_object=array ($feuille1,$feuille2,$fils1,$fils2,$pere,$feuillen2,$feuillen1,$frere2,$frere1,$filsn1,$peren);

insert_Naire_fils("pereN",$fils2,$tab_object);

print "<h3>Arbre Naire</h3>";
$peren->display('');


?>

Patches

Pull Requests

 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Sat Oct 10 14:00:02 2026 UTC