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

536
Views
php 8.1 - explotar (): pasar nulo al parámetro n. ° 2 ($ cadena) de tipo cadena está en desuso

Me encontré con algunos errores obsoletos con 8.1 que quiero abordar.

PHP Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in...

 //explode uids into an array $comp_uids = explode(',', $result['comp_uids']);

$result['comp_uids'] en este caso está vacío, por lo que se muestra el error nulo. No estoy seguro de por qué están desaprobando esta capacidad, pero ¿cuál es el cambio recomendado para evitar esto? Estoy viendo algo similar con strlen(): Passing null to parameter #1 ($string) of type string is deprecated y algunos otros usan 8.1.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Utilice el operador de fusión nulo para que el valor predeterminado sea una cadena vacía si el valor es null .

 $comp_uids = explode(',', $result['comp_uids'] ?? '');
over 4 years ago · Santiago Trujillo Report

0

No hay necesidad de explotar null , sabes de antemano que no devolverá coincidencias. Si realmente quieres [''] como resultado, es más intuitivo hacerlo explícito:

 $comp_uids = $result['comp_uids'] !== null ? explode(',', $result['comp_uids']) : [''];

Todavía encuentro esto un poco contrario a la intuición para sus compañeros programadores. En mi humilde opinión, el concepto de que no se encontraron UID está mejor representado por una matriz vacía y, si también puede esperar cadenas vacías, es posible que se manejen junto con null :

 $comp_uids = $result['comp_uids'] != '' ? explode(',', $result['comp_uids']) : [];
over 4 years ago · Santiago Trujillo Report

0

Simplemente emita el parámetro como una cadena, convertirá nulo a ''.

 $comp_uids = explode(',', (string)$result['comp_uids']);
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!