what are you trying to do?
why do you want to diffirentiate between 99 as a string or as a number?
Chris Boget [EMAIL PROTECTED] wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
Sample code:
script language=php
$array = array( one, two, three );
while( list( $key, $val ) = each( $array )) {
if( is_string( $key )) {
echo Key is a string\n;
}
echo Key: $key = $val :Val\n;
}
echo \n\n;
$array = array( SS = one, 15 = two, 19 = three );
while( list( $key, $val ) = each( $array )) {
if( is_string( $key )) {
echo Key is a string\n;
}
echo Key: $key = $val :Val\n;
}
/script
Because of the loose typing in PHP, essentially all arrays
are associative arrays. Running the script above produces
the following results:
BEGIN RESULTS
Key: 0 = one :Val
Key: 1 = two :Val
Key: 2 = three :Val
Key is a string
Key: SS = one :Val
Key: 15 = two :Val
Key: 19 = three :Val
END RESULTS
Anyways, I want to be able to pass an array to a function.
This array can be defined by me as associative (as the
second array in the sample) or regular (as the first). However,
I need to be able to tell one from the other in my function.
As you can see, I can't do it with the is_string() function
because it doesn't realize that the 15 and the 19 I specify
as keys in the second declaration are actually strings that I
added and not actual element numbers.
Is there some way that I can determine if the keys of an array
are user defined (ie, a user defined associative array) and not
the keys PHP defines due to the fact that they are the element
numbers?
Another, somewhat related issue, notice the funkiness that
happens when you run the following, similar, script:
script language=php
$array = array( one, two, three );
while( list( $key, $val ) = each( $array )) {
if( is_string( $key )) {
echo Key is a string\n;
}
echo Key: $key = $val :Val\n;
}
echo \n\n;
for( $i = 0; $i count( $array ); $i++ ) {
echo Printing element: $i -- . $array[$i] . \n;
}
echo \n\n;
$array = array( SS = one, 15 = two, three );
while( list( $key, $val ) = each( $array )) {
if( is_string( $key )) {
echo Key is a string\n;
}
echo Key: $key = $val :Val\n;
}
echo \n\n;
for( $i = 0; $i 20; $i++ ) {
echo Printing element: $i -- . $array[$i] . \n;
}
/script
Any help anyone can provide would be *greatly* appreciated!!
Chris
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]