---
title: "Ejemplos de uso de algunas funciones en PHP"
date: 2018-04-13
author: "Alex Borrás"
source: https://alexborras.com/ejemplos-de-uso-de-algunas-funciones-en-php/
site: "El Blog de Alex Borrás"
---

# Ejemplos de uso de algunas funciones en PHP

\[vc\_row row\_type=»row» use\_row\_as\_full\_screen\_section=»no» type=»full\_width» angled\_section=»no» text\_align=»left» background\_image\_as\_pattern=»without\_pattern»\]\[vc\_column\]\[vc\_column\_text\]A lo largo de mi trabajo con [PHP](https://www.php.net/manual/es/intro-whatis.php) he ido encontrándome con algunas dudas que se van resolviendo con documentación y ejemplos. Aquí os dejo algunos de los que me parecen más útiles.\[/vc\_column\_text\]\[/vc\_column\]\[/vc\_row\]\[vc\_row row\_type=»row» use\_row\_as\_full\_screen\_section=»no» type=»full\_width» angled\_section=»no» text\_align=»left» background\_image\_as\_pattern=»without\_pattern»\]\[vc\_column\]\[vc\_column\_text\]

Índice de contenidos

- [1 Código PHP de ejemplo](#Codigo_PHP_de_ejemplo)
    - [1.1 Obtener nombre y extensión de un fichero en PHP](#Obtener_nombre_y_extension_de_un_fichero_en_PHP)
    - [1.2 Buscar String en un String](#Buscar_String_en_un_String)
    - [1.3 Como sustituir – reemplazar un string en PHP](#Como_sustituir_8211_reemplazar_un_string_en_PHP)
    - [1.4 Generar un string aleatorio en PHP](#Generar_un_string_aleatorio_en_PHP)
    - [1.5 Para separar un string en varias partes en función de un caracter determinado:](#Para_separar_un_string_en_varias_partes_en_funcion_de_un_caracter_determinado)
    - [1.6 Acentos en Mail por PHP](#Acentos_en_Mail_por_PHP)
- [2 Código de PHP relacionado con WordPress](#Codigo_de_PHP_relacionado_con_WordPress)
    - [2.1 Función wp\_list\_pages](#Funcion_wp_list_pages)
    - [2.2 Variables del servidor de WordPress](#Variables_del_servidor_de_WordPress)

## Código PHP de ejemplo

\[/vc\_column\_text\]\[vc\_column\_text\]

### Obtener nombre y extensión de un fichero en PHP

```
function file_dataname($p_file){
	$return = array();
	// Short Name
	$temp = explode("/",$p_file);
	if ($temp[1] == 0)
	{
		$temp = explode("\\",$p_file);
	}
	$temp2 = count($temp) - 1;
	$return['shortname'] = $temp[$temp2];
	// Name WhitoutExtension
	$file = explode(".",$return['shortname']);
	// Usas un for por si el nombre del archivo tiene puntos 
	// y no recorres la ultima posición que se supone tiene la
	// extensión del archivo
	for ($i = 0 ; $i < count($file)-1 ; $i++) { $name.= $file[$i]."."; } // Eliminar el ultimo punto $name = substr($name,0,-1); // imprimes el nombre o haces con el lo que quieras $return['name'] = $name; // Extension $temp = explode(".",$p_file); $temp2 = count($temp) - 1; $return['extension'] = $temp[$temp2];; return $return; } $str = file_dataname("wp-content\alex.borras.php"); echo $str['shortname']."\n"; echo $str['name']."\n"; echo $str['extension']."\n";
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Buscar String en un String

```
   $str = "Hello World";
   if (stristr($str, "Wor"))
   {
      echo "Encontrado";
   }
   else 
   {
      echo "No Encontrado";
   }
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Como sustituir – reemplazar un string en PHP

```
$str = "123,45";
echo str_replace(",",".",$str);
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Generar un string aleatorio en PHP

```
echo "Code:".getUniqueCode();
function getUniqueCode($length = "12"){
$code = md5(uniqid(rand(), true));
if ($length != "") return substr($code, 0, $length);
else return $code;
}
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Para separar un string en varias partes en función de un caracter determinado:

```
$string = "Alex;Pedro;Jose;Carlos";
$names = explode(";",$string);
echo $names[0];
echo $names[1];
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Acentos en Mail por PHP

Cuando se utiliza la función mail() de PHP para que se vean los acentos del cuerpo se debe añadir la siguiente línea en las Headers:

| Código: PHP |
| --- |
| ``` $_headers .= "Content-type: text/html; charset=utf-8\r\n"; ``` |

Para que se vean los acentos en el Subject es más complicado, de momento lo que se puede hacer es eliminarlos del subjecto con el siguiente código:

| Código: PHP |
| --- |
| ``` $subject = _PCOMMENTS." "._FROMWEB." ".$sitename; $subject = html_entity_decode($subject); //Pasa los caracteres especiales a normales $subject = acentos_eliminar($subject);   //Elimina los acentos ``` |

\[/vc\_column\_text\]\[/vc\_column\]\[/vc\_row\]\[vc\_row row\_type=»row» use\_row\_as\_full\_screen\_section=»no» type=»full\_width» angled\_section=»no» text\_align=»left» background\_image\_as\_pattern=»without\_pattern»\]\[vc\_column\]\[vc\_column\_text\]

## Código de PHP relacionado con WordPress

\[/vc\_column\_text\]\[vc\_column\_text\]

### Función wp\_list\_pages

```
wp_list_pages('title_li=&amp;depth=2&amp;sort_column=menu_order');
```

Como excluir páginas:

```
wp_list_pages('title_li=&amp;depth=2&amp;sort_column=menu_order&amp;exclude=506,509');
```

\[/vc\_column\_text\]\[vc\_column\_text\]

### Variables del servidor de WordPress

La variable del servidor `max_execution_time` en una instalación de [WordPress](https://alexborras.com/wordpress/) 6.5 se recomienda establecerse en al menos 300 segundos (5 minutos). Esto se debe a que WordPress y sus plugins pueden requerir más tiempo para ejecutar scripts largos, especialmente durante actualizaciones, importaciones de datos grandes o procesos complejos como la generación de miniaturas para un gran número de imágenes.

Para establecer esta variable, puedes modificar el archivo `php.ini` de tu servidor y agregar o cambiar la siguiente línea:  

`max_execution_time = 300
`

Si no tienes acceso al archivo `php.ini`, puedes intentar agregar esta línea en el archivo `.htaccess` de tu instalación de WordPress:  

`php_value max_execution_time 300
`

Otra opción es añadir la siguiente línea en el archivo `wp-config.php`:  

`@ini_set('max_execution_time', '300');
`  

Estas configuraciones ayudan a asegurar que los scripts de WordPress tengan suficiente tiempo para completar su ejecución sin interrupciones.\[/vc\_column\_text\]\[/vc\_column\]\[/vc\_row\]\[vc\_row\]\[vc\_column\]\[vc\_column\_text\]Si estáis interesados en la programación y ejemplos os recomiendo mi sección: [Trucos y ejemplos de VBA](https://alexborras.com/trucos-y-ejemplo-de-vba-para-microsoft-access/).\[/vc\_column\_text\]\[/vc\_column\]\[/vc\_row\]
