|
Posted by Rik on 08/22/06 14:01
Kim Andrι Akerψ wrote:
> Luke - eat.lemons@gmail.com wrote:
>
>> Rik wrote:
>>> eat.lemons@gmail.com wrote:
>>>> Hi all,
>>>>
>>>> I need to test a IP for a PTR record and display the outcome.
>>>>
>>>> The problem i have is i need to test with 2 vars.
>>>>
>>>> $host = the ip
>>>> $hostmask = the hostmask
>>>>
>>>> How do i use 2 vars in one function so i can call it like:
>>>>
>>>> test_ptr($host, $hostmask)
>>>>
>>>> Ive tested this but cant seem to get it to work.
>>>>
>>>> code below. Thanks in advance
>>>>
>>>> function test_ptr($host) {
>>>> if (strlen(gethostbyaddr($host))==
>>>> strlen(gethostbyname("$hostmask"))) {
>>>> $emsg = " !!Couldent find PTR Record!!";
>>>> }
>>>> }
>>>
>>> I'm not exactly sure what you're trying to do, but probably:
>>>
>>> function test_ptr($ip,$hostname){
>>> return (trim($ip)==trim(gethostbyname($hostname)));
>>> }
>>> Or, alternatively, since you seem to want an error message:
>>> function test_ptr($ip,$hostname){
>>> $return = (bool)(trim($ip)==trim(gethostbyname($hostname)));
>>> if(!$return) trigger_error("{$hostname}'s ip is not {$ip}");
>>> return $return;
>>> }
>>>
>>> Grtz,
>>
>> I have it working now but thanks for the response! I see how your
>> script works, didn't think of doing it that way!
>>
>> Ps. What does the (bool) do exactly (im new to php)
>
> It's a type cast that forces the variable to be evaluated as a
> boolean. More about type casting can be found here:
> http://php.net/language.types.type-juggling#language.types.typecasting
Yup, it's actually somewhat useless here, as the return should already be a
bool, but for predicatbility an clearness of code I often force a certain
type of return, so I don't mess up for instance false, 0, '' etc. Better a
typecast to many then to little.
Grtz,
--
Rik Wasmus
Navigation:
[Reply to this message]
|