Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

112
Views
Analizando una clave/valor JSON a un bool

Estoy trabajando con estos datos JSON:

 { "Data": { "Expires" : 0 } }

Y quiero convertir lo que sea que esté en la clave "Expires" a un valor bool.

Si es "true" , "false" , "no" , "yes" , 0 , 1 , true , false

Primero verifico si el valor existe.

 //DEFAULT $EXPIRES = false; if(array_key_exists('Expires', $DATA)) { if (isset( $DATA[ 'Expires' ] )) { $EXPIRES = strtolower( clean_input( $DATA[ 'Expires' ] ) ); if (checkIfBoolean( $EXPIRES )) { //OK IT IS A BOOLEAN VALUE SET IT $EXPIRES = filter_var( $EXPIRES, FILTER_VALIDATE_BOOLEAN); } else { return array( "Code" => 0, "Error" => "Expires is not a boolean [0, 1]." ); } } } //CAN'T TRUST THE USER, CLEAN THEIR INPUT function clean_input ( $data ) { $data = trim( $data ); $data = stripslashes( $data ); $data = htmlspecialchars( $data ); return $data; } //CHECK IF BOOLEAN function checkIfBoolean ( $string ) { $string = strtolower( $string ); return ( in_array( $string, array( "true", "false", "1", "0", "yes", "no"), true ) ); }

Pero cuando compruebo la variable

 echo 'Expires: ' . $EXPIRES ? 'YES' : 'NO';

Siempre devuelve true .

Qué estoy haciendo mal.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

El problema es aquí 'Expires: '. $EXPIRES ? 'YES' : 'NO'; estás concatenando estos dos 'Expires: '. $EXPIRES por lo que siempre devolverá YES

Cambia esto a:

 echo 'Expires: '. $EXPIRES ? 'YES' : 'NO';

Este:

 if($EXPIRES===true) { echo 'Expires: '.$EXPIRES; }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!