05-20-2006
got some lead
Thanks both of you, for your replies. The examples that I cited were from ksh actually. I did come across some places and found out that == is equality operator used in arirthmatic operations (e.g. to compare two strings) whereas = is simply an assignment operator.
I guess I am still a little bit confused as far as the different brackets are concerned i.e. is my understand correct per following:
1. (commands...) - open a subshell and execute commands in that subshell ??
2. ((commands...)) - i have no idea about this one.
As far as [ $var1 -eq 0 ] and [[ $var1 -eq 0 ]] type of brackets are concerned, i guess they are equivalent and are used to test whether var1 is set to 0.
Thanks once again
Vikas
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello
I would like to know where there is a difference between these two machines?
HP9000-735/125
HP9000-B132L
What does that all mean?
Okay, HP= Hewlett Packard
But 9000, 725/125, B132L ????
I am asking that question because I am about to buy one for myself, so I can have some fun... (3 Replies)
Discussion started by: Fwurm
3 Replies
2. Linux
samba:/home/backup # df -h /home/
Filesystem Size Used Avail Use% Mounted on
/dev/sdb2 34G 8.6G 26G 26% /home
samba:/home/backup # df -H /home/
Filesystem Size Used Avail Use% Mounted on
/dev/sdb2 37GB 9.2GB 28GB 26% /home
what... (2 Replies)
Discussion started by: cw1972
2 Replies
3. Shell Programming and Scripting
Somebody please tell me the difference between $@ and $*
Thanks in advance.
Saneesh Joseph (1 Reply)
Discussion started by: saneeshjose
1 Replies
4. UNIX for Advanced & Expert Users
difference b/w shell scripting and perl scripting (2 Replies)
Discussion started by: simmijaswal
2 Replies
5. Shell Programming and Scripting
just wondering what the difference is between 1,$ and /g when doing a substitution in vi. doesn't seem to be much difference from what i can see. (2 Replies)
Discussion started by: bigubosu
2 Replies
6. UNIX for Dummies Questions & Answers
$x=10
and providing the spaces between = and 10
$x= 10 (4 Replies)
Discussion started by: shashank1311
4 Replies
7. UNIX for Dummies Questions & Answers
Hi All
Can any body please tell me what is difference between
sh scr
./scr
Here scr is a script. (1 Reply)
Discussion started by: parthmittal2007
1 Replies
8. Programming
I think both write at the end of the file ......
but is there a sharp difference between those 2 instruction .....
thank you
this is my 3rd question today forgive me :D (1 Reply)
Discussion started by: fwrlfo
1 Replies
9. Shell Programming and Scripting
Hi ..
I am trying to create one function.
It will have two arguments.
Argument1: a,b,d,f,g
Argument2:21212,sfsd,4546,67867,a,asda,b
So the output will be Argument1 - Argument2
which is d,f,g
Can anyone help with this one? (4 Replies)
Discussion started by: Anupam_Halder
4 Replies
10. Shell Programming and Scripting
In the awk I am trying to subtract the difference $3-$2 of each matching $4 before the first _ (underscore) and print that value in $13.
I think the awk will do that, but added comments. What I am not sure off is how to add a line or lines that will add sum each matching $13 value and put it in... (2 Replies)
Discussion started by: cmccabe
2 Replies
LEARN ABOUT PHP
debug_zval_dump
DEBUG_ZVAL_DUMP(3) 1 DEBUG_ZVAL_DUMP(3)
debug_zval_dump - Dumps a string representation of an internal zend value to output
SYNOPSIS
void debug_zval_dump (mixed $variable, [mixed $...])
DESCRIPTION
Dumps a string representation of an internal zend value to output.
PARAMETERS
o $variable
- The variable being evaluated.
RETURN VALUES
No value is returned.
EXAMPLES
Example #1
debug_zval_dump(3) example
<?php
$var1 = 'Hello World';
$var2 = '';
$var2 =& $var1;
debug_zval_dump(&$var1);
?>
The above example will output:
&string(11) "Hello World" refcount(3)
Note
Beware the refcount
The refcount value returned by this function is non-obvious in certain circumstances. For example, a developer might expect the
above example to indicate a refcount of 2. The third reference is created when actually calling debug_zval_dump(3).
This behavior is further compounded when a variable is not passed to debug_zval_dump(3) by reference. To illustrate, consider a
slightly modified version of the above example:
Example #2
<?php
$var1 = 'Hello World';
$var2 = '';
$var2 =& $var1;
debug_zval_dump($var1); // not passed by reference, this time
?>
The above example will output:
string(11) "Hello World" refcount(1)
Why refcount(1)? Because a copy of $var1 is being made, when the function is called.
This function becomes even more confusing when a variable with a refcount of 1 is passed (by copy/value):
Example #3
<?php
$var1 = 'Hello World';
debug_zval_dump($var1);
?>
The above example will output:
string(11) "Hello World" refcount(2)
A refcount of 2, here, is extremely non-obvious. Especially considering the above examples. So what's happening?
When a variable has a single reference (as did $var1 before it was used as an argument to debug_zval_dump(3)), PHP's engine opti-
mizes the manner in which it is passed to a function. Internally, PHP treats $var1 like a reference (in that the refcount is
increased for the scope of this function), with the caveat that if the passed reference happens to be written to, a copy is made,
but only at the moment of writing. This is known as "copy on write."
So, if debug_zval_dump(3) happened to write to its sole parameter (and it doesn't), then a copy would be made. Until then, the
parameter remains a reference, causing the refcount to be incremented to 2 for the scope of the function call.
SEE ALSO
var_dump(3), debug_backtrace(3), References Explained, References Explained (by Derick Rethans).
PHP Documentation Group DEBUG_ZVAL_DUMP(3)