Ao recarregar minha pagina não aparece o este erro: Acredito que o mesmo não esteje achando minha classe ArrayUtils,más não consigo encontrar onde está o erro.
Uncaught Error: Class 'alura\ArrayUtils' not found in C:\Users\momo_\PhpstormProjects\removendo_elementos_array\index.php:26
Stack trace:
#0 {main}
thrown in C:\Users\momo_\PhpstormProjects\removendo_elementos_array\index.php on line 26
arquivo index.php
<?php declare(strict_types=1); //DESABILITA A CONVERSÃO AUTOMÁTICA DE TIPOS DE ARGUMENTOS E RETORNO DE FUNÇÕES.
namespace alura;
require 'autoload.php';
$correntistas_e_compras = [
"Giovanni",
"João",
12,
"Maria",
25,
"Luis",
"Luisa",
"12",
"Rafael",
];
echo "<h2>Array com todos elementos intáctos</h2>".PHP_EOL;
foreach ($correntistas_e_compras as $cc){
echo "<h4>$cc</h4>".PHP_EOL;
}
$tamanhoArray = sizeof($correntistas_e_compras);
echo "<h5>Tamanho do array: $tamanhoArray</h5>".PHP_EOL;
ArrayUtils::removeElement("Giovanni", $correntistas_e_compras);
echo "<h2>Array com um elemento removido</h2>".PHP_EOL;
foreach ($correntistas_e_compras as $cc){
echo "<h4>$cc</h4>".PHP_EOL;
}
$tamanhoArrayMd = sizeof($correntistas_e_compras);
echo "<h5>Tamanho do array: $tamanhoArrayMd</h5>".PHP_EOL;
arquivo autoload.php
spl_autoload_register(
function(string $namespace):void {
$caminho = "/src";
$diretorio_classe = str_replace("\\",DIRECTOR_SEPARATOR, $namespace);
@include_once getcwd() . $caminho . DIRECTORY_SEPARATOR . "{$diretorio_classe}.php";
}
);
classe ArrayUtils.php
<?php declare(strict_types=1); //DESABILITA A CONVERSÃO AUTOMÁTICA DE TIPOS DE ARGUMENTOS E RETORNO DE FUNÇÕES.
class ArrayUtils
{
public static function removeElement(string $elemento, array &$array): void
{
$posicao = array_search($elemento, $array,true);
if(is_int($posicao)) {
unset($array[$posicao]);
echo var_dump($array);
}else {
echo "Elemento não encontrado no array";
}
}
}