Jump to content
php.lv forumi

Iepriekš definēti mainīgie funkcijās


hackerman

Recommended Posts

Vai ir kāds veids likt pašdefinētās funckijās strādāt tiem mainīgajiem, kas ir definēti ārpus šīs funkcijas?

 

$a = "aaabols";

function aablele()
{
$b = "bumbieris";
echo "Man ir".$a."un".$b;
}

 

P.S. šāds variants neapmierina mani (neder):

 

function aablele($a='')
{
$b = "bumbieris";
echo "Man ir".$a."un".$b;
}

$a = "aaabols";
aabele($a);

Link to comment
Share on other sites

var padot ar &$mainigais VAi defineet kaa Globalo mainiigo, bet neviens ne otrs variants nav parak labs, labak tomer pietureties pie taa ka f-jai tiek padots kaads mainiigais standarta varianta.

Kaa arii tomer labak pasaa f-ja neizmantot echo bet gan return $atgriezjamaa_vertiiba

un tad jau izvadiit vertiibu pasaa kodaa ..

echo mana_funkcija();

Tas dod krietni lielaku koda elastiibu --> iespejams ne tikai izvadiit, bet teiksim pie vajadziibas arii saglabat vertiibu DB (faila) , parbaudiit vai rezultaats vispar ir, un tad tikai izvadiit ... respektiivi krietni plasakas pielietosanas iespejas...

 

P.S. Man agrak arii likaas ka nav risinajumu kaa vieniigi globalo mainiigo izmantosana, bet tomeer taa nav Praktiski VIENMER bez taa var iztikt...

Edited by Grey_Wolf
Link to comment
Share on other sites

Nu ar echo bija tikai piemērs. Ir funckijas, kurās strādā mysql_query, un tur vajag ieviest kaut kādus drošības pasākumus. Doma bija lietot šo te:

function quote_smart($value)
{
	// Stripslashes
	if (get_magic_quotes_gpc())
	{
		$value = stripslashes($value);
	}
	// Quote if not a number or a numeric string
	if (!is_numeric($value))
	{
		$value = "'" . mysql_real_escape_string($value) . "'";
	}
	return $value;
}

 

martins256, tev droši vien šis te liksies pazīstams :)

 

 

Vispār, ja godīgi, es neesmu īpaši iedziļinājies tajā aizsardzības veidošanā. Varbūt var likties mierā un iztikt vienkārši ar to real escape string ?

Edited by hackerman
Link to comment
Share on other sites

×
×
  • Create New...