0% encontró este documento útil (0 votos)
61 vistas13 páginas

Funciones PHP para Calcular Áreas

El documento describe cómo crear una función en PHP que calcula el área de diferentes figuras geométricas como triángulos, cuadrados y círculos utilizando variables y switch cases. Luego enumera algunas de las extensiones más importantes de PHP como PDO para bases de datos, OPCache para mejorar el rendimiento, y extensiones criptográficas como hash y OpenSSL.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
61 vistas13 páginas

Funciones PHP para Calcular Áreas

El documento describe cómo crear una función en PHP que calcula el área de diferentes figuras geométricas como triángulos, cuadrados y círculos utilizando variables y switch cases. Luego enumera algunas de las extensiones más importantes de PHP como PDO para bases de datos, OPCache para mejorar el rendimiento, y extensiones criptográficas como hash y OpenSSL.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

PROGRAMACION

SEMANA 4

Angelica Fuentes Pino


12-09-2022
Técnico en Informática.
DESARROLLO
Utilizando PHPTester, diseñe una función que permita calcular el área de un triángulo, un cuadrado y un
círculo, considere todas las variables necesarias y declárelas con valores de prueba para ejecutar la
función y obtener en pantalla las 3 áreas configuradas

<?php
Echo "<h1>Calculador de areas </h1> <br>";
echo "<br>";
Function operaciones($numero1, $numero2, $area)
{
switch ($area){
case "triangulo";
$area=(($numero1*$numero2)/2);
echo "El Area del Triangulo es : $area. <br>";
break;
}
switch ($area){
case "cuadrado";
$area=(POW($numero1,2));
echo "El Area del Cuadrado es : $area. <br>";
break;
}
switch ($area){
case "circulo";
$area=(3.1415*POW($numero1,2));
echo "El Area del Circulo es : $area. <br>";
break;
default: "no se permiten otras figuras geométricas";
}
}
operaciones(3,4,"triangulo");
operaciones(3,4,"cuadrado");
operaciones(3,4,"circulo");
?>
2. Al utilizar variables y funciones en PHP mencione qué extensiones y qué clases e interfaces reconoce
como parte del lenguaje.

A continuación se nombran y describen algunas de las extensiones más


importantes de PHP ordenadas categóricamente (un total de 48 extensiones):

Extensión / Descripción / funciones y clases e interfaces


Incorporación

Extensiones básicas

Manejo de Funciones para el manejo de variables\: boolval, empty, floatval,


variables / núcleo
get_defined_vars, gettype, intval, is_array, is_callable,

is_null, isset, print_r, serialize, unset, unserialize, var_dump...

Manejo de Funciones para el manejo de funciones\: call_user_func_array,


funciones / núcleo
call_user_func, func_get_args, func_num_args, function_exists,

get_defined_functions...

Strings / núcleo Funciones para la manipulación de strings\: chr, echo, explode,

htmlentities, htmlspecialchars, implode, join, md5, nl2br, print,

printf, str_repeat, str_replace, str_shuffle, stripos, strlen,


strtoupper,

substr, ucfirst, trim...


Arrays / núcleo Funciones para interactuar con arrays y manipularlos\:
array_chunk,

array_diff, array_keys, array_map, array_push, array_rand,

array_replace, array_search, array_shift, array_pop, array_merge,


array_walk, count, each, extract, list, reset, sort...

Información de clases y Permiten obtener información sobre clases y objetos\: __autoload,


objetos / núcleo call_user_method, class_alias, class_exists, get_called_class,
get_class, get_object_vars, is_a, get_declared_classes,
method_exists...

Directorios / núcleo Funciones para trabajar con directorios. Clases:


Directory. Functions\: chdir, chroot, closedir, dir, getcwd, opendir,
scandir...

Sistema de Funciones para trabajar con archivos\: basename, chmod, chown,


ficheros / núcleo dirname, fclose, feof, file_exists, file_get_contents,
file_put_contents, file, filesize, fopen, fwrite, is_dir, is_readable,
is_uploaded_file, mkdir, pathinfo, readfile, rmdir, tmpfile...

Fecha/Hora / núcleo Funciones para obtener fecha y hora que dependen del


servidor. Clases: DateTime, DateTimeImmutable, DateTimeZone,
DateInterval, DatePeriod. Functions\: checkdate, date_add,
date_create, date_format, date_time_set, date, localtime,
microtime, strtotime, time... (muchas funciones son alias de las
clases)

Sesiones / núcleo Funciones de sesiones, formas de preservar información para


accesos subsiguientes. Clases: SessionHandler. Interfaces:
SessionHandlerInterface. Functions\: session_abort,
session_encode, session_id, session_name, session_start,
session_status, session_unset...

Mail / núcleo Función que permite enviar correos\: mail

PDO / bundled La extensión PDO (PHP Data Objects) define una interfaz ligera para


acceder a bases de datos en PHP. Proporciona una capa de
abstracción de acceso a datos que emplea las mismas funciones y
consultas independientemente de la base de datos que se
utilice. Clases\: PDO, PDOStatement,
PDOException. Controladores\: MS SQL Server, Mysql, Oracle,
PostgreSQL, SQLite...

Afectan al
comportamiento de PHP

APC / Pecl Alternative PHP Cache, código de operación de caché libre y abierto


para PHP. Clases: APCIterator. Functions: apc_add, aps_bin_dump,
apc_cache_info, apc_clear_cache, apc_exists, apc_store...

Manejo de Funciones para el manejo y registro de errores\: debug_backtrace,


errores / núcleo error_clear_last, error_get_last, error_log, set_error_handler,
trigger_error...

OPCache / bundled Mejora el rendimiento de PHP almacenando el código de bytes en


un script precompilado en la memoria compartida, eliminando la
necesidad de que PHP cargue y analice los script en cada petición.
Functions\: opcache_get_configuration, opcache_get_status,
opcache_is_script_cached...

Control de la Funciones que permiten controlar cuándo se envía la salida.


salida / núcleo Functions\: flush, ob_clean, ob_flush, ob_get_contents,
ob_get_status, ob_start...

Opciones e información Funciones que proporcionan información sobre PHP. Functions\:


de PHP / núcleo extension_loaded, gc_enable, get_defined_constants,
get_extension_funcs, get_include_path, get_loaded_extensions,
getenv, memory_get_usage, phpinfo, phpversion, set_time_limit,
version_compare...

Extensiones de
compresión y archivos

Bzip2 / externa Módulo para leer y escribir archivos comprimidos con bzip2 (.bz2).


Functions\: bzclose, bzcompress, bzdecompress, bzerror, bzflush,
bzopen...

Zlib / bundled Módulo para leer y escribir ficheros comprimidos con gzip (.gz).


Functions\: gzclose, gzcompress, gzencode, gzfile, gzopen,
gzread, gztell, gzwrite...
LZF / pecl LZF es un algoritmo de compresión muy rápido, ideal para ahorrar
espacio con un ligero costo en velocidad. Utiliza la librería liblzf.
Functions\: lzf_compress, lzf_decompress, lzf_optimized_for

Zip / externa Extensión que permite leer o escribir archivos Zip y los archivos de


dentro. Clases: ZipArchive. Functions\: zip_close,
zip_entry_filesize, zip_entry_name, zip_entry_name,
zip_entry_read, zip_open, zip_read...

Extensiones
criptográficas

Hash / núcleo Motor para cifrar mensajes (algoritmos hash). Functions\:


hash_algos, hash_copy, hash_file, hash_init, hash_update, hash...

Mcrypt / externas Interfaz para la biblioteca mcrypt, admite una gran variedad de


algoritmos de bloques como DES, TRIpleDES, Blowfish, 3-WAY,
SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 y GOST en los
modos de cifrado CBC, OFB, CBF y ECB. Functions\: mcrypt_cbc,
mcrypt_cfb, mcrypt_decrypt, mcrypt_encrypt, mcrypt_generic,
mcrypt_list_algorithms, mcrypt_list_modes, mcrypt_module_open,
mcrypt_ofb...

OpenSSL / externas Módulo que emplea las funciones de OpenSSL (sólo algunas) para


la generación y verificación de firmas y para encriptar y
desencriptar datos. Functions:\ openssl_csr_export,
openssl_csr_new, openssl_csr_sign, openssl_decrypt,
openssl_digest, openssl_encrypt, openssl_open, openssl_pkey_free,
openssl_seal, openssl_sign, spenssl_spki_new, openssl_verify...

Hash de Proporciona una envoltura fácil de usar sobre crypt() para hacerla


contraseñas / núcleo sencilla para crear y administrar contraseñas de forma segura.
Functions\: password_get_info, password_hash,
password_needs_rehash, password_verify

Soporte para el lenguaje


humano y codificación
de caracteres

iconv / bundled Este módulo tiene una interfaz para la conversión de conjuntos de


caracteres iconv. Se puede convertir un conjunto de caracteres
local por otro, el cual puede ser Unicode. Es recomendable instalar
la librería GNU libiconv. Functions\: iconv_get_encoding,
iconv_mime_encode, iconv_strlen, iconv_strpos, iconv_substr,
iconv...

intl / bundled Extensión para la internacionalización intl es una envoltura para la


librería ICU, permitiendo realizar un cotejo que cumple con
el UCA y formatear fecha/hora/número/moneda en los
scripts. Clases: Collator, NumberFormatter, Locale, Normalizer,
MessageFormatter, IntlCalendar, IntlTimeZone, IntlDateFormatter,
ResourceBundle, Spoofchecker, Transliterator, IntlChar,
IntlException...

mbstring / bundled Los esquemas de codificación multibyte se desarrollaron para


expresar más de 256 caracteres en el sistema de codificación
regular a nivel de bits. Cuando se manipulan strings en una
codificación multibyte, es necesario utilizar funciones
especiales. mbstring proporciona funciones específicas para
cadenas de texto multibyte que ayudan a tratar codificaciones
multibyte en PHP. Functions\: mb_convert_case,
mb_detect_encoding, mb_encoding_aliases, mb_ereg_replace,
mb_ereg_search_init, mb_ereg, mb_parse_str, mb_send_mail,
mb_split, mb_strlen, mb_strrpos, mb_substr...

Procesamiento y
generación de imágenes

Exif / bundled Con la extensión Exif, Exchangeable image information , se puede


trabajar con metadatos de imágenes (ej: funciones para leer
metadatos de fotografías tomadas con cámaras digitales con la
información almacenada en las cabeceras de imágenes JPEG y TIFF).
Functions\: exif_imagetype, exif_read_data, exif_tagname,
exif_thumbnail...

GD / bundled PHP también se puede usar para crear y manipular ficheros de
imágenes en diferentes formatos: GIF, PNG, JPEG, WBMP, XPM. PHP
puede transferir flujos de imagen directamente al navegador.
Functions\: gd_info, getimagesize, imageaffine, imagearc,
imagecolorat, imagecolormatch, imagecolorset, imagecopy,
imagecreate, imagecreatefromgd, imagecrop, imagedestroy,
imagefill, imageflip, imagegif, imagejpeg, imageline, imagescale...
ImageMagick / pecl Extensión nativa de PHP para crear y modificar imágenes con la
API ImageMagick (software para crear, editar y componer imágenes
de mapa de bits). Puede leer, convertir y escribir imágenes en más
de 100 formatos. Clases: Imagick, ImagickDraw, ImagicPixel,
ImagickPixelIterator, ImagickKernel...

Servicios web

OAuth / pecl Extensión que provee un cliente y un servicio OAuth (protocolo de


autorización basado en HTTP que permite a las aplicaciones
garantizar el acceso a datos sin tener alojado un nombre de
usuario y contraseña). Clases: OAuth, OAuthProvider

SOAP / externas La extensión SOAP se utiliza para escribir servidores y clientes


SOAP. Clases: SOAPClient, SoapServer, SoapFault, SoapHeader,
SoapParam, SoapVar...

Manipulación XML

DOM / externas La extensión DOM, Document Object Model, permite manipular


documentos XML mediante la API DOM. Clases: DOMAttr,
DOMCdataSection, DOMCharacterData, DOMComment,
DOMDocument, DOMElement, DOMEntity, DOMNode...

SimpleXML / externas Proporciona un conjunto de herramientas para convertir XML a un


objeto que pueda ser procesado con selectores de propiedades e
iteradores de arrays. Clases: SimpleXMLElement,
SimpleXMLIterator. Functions\: simplexml_import_dom,
simplexml_load_file, simplexml_load_string...

Analizador Extensión que implementa el soporte para expat con herramientas


XML / externas para analizar (no validar) documentos XML. Functions\:
utf8_encode, xml_error_string, xml_get_current_line_number,
xml_get_error_code, xml_parse, xml_set_default_handler,
xml_set_object

XMLReader / externas XMLReader es un analizador de XML. El lector actúa como un


cursor yendo hacia delante en el flujo del documento y
deteniéndose en cada nodo. Clases: XMLReader

XMLWriter / externas Envuelve la API XMLWriter de libxml. Representa un escritor que


provee medios no almacenados en caché de sólo avance para la
generación de flujos o ficheros con datos XML. Clases: XMLWriter

Otras extensiones
básicas

Curl / externas Librería libcurl que permite conectarse y comunicarse con


diferentes tipos de servidores y protocolos: http,
https, ftp, gopher, telnet, dict, file y ldap. También admite
certificados HTTPS, HTTP, POST, HTTP PUT, subidas mediante FTP
(también es posible hacerlo con la extensión FTP de PHP), subidas
con formularios HTTP, proxies, cookies y autentificación. Clases:
CURLFile. Functions\: curl_close, curl_errno, curl_error, curl_exec,
curl_init, curl_multi_exec, curl_multi_init, curl_pause, curl_reset,
curl_setopt, curl_strerror...

FTP / bundled Las funciones de esta extensión implementan el acceso por parte


del cliente a los servidores mediante FTP, el Protocolo de
Transferencia de Ficheros. Functions\: ftp_alloc, ftp_chdir,
ftp_chmod, ftp_close, ftp_connect, ftp_exec, ftp_get, ftp_login,
ftp_mkdir, ftp_put, ftp_quit, ftp_raw, ftp_rename, ftp_rmdir...

LDAP / externas El LDAP, Lightweight Directory Acess Protocol , se utiliza para


acceder a servidores de directorio. Un directorio es un tipo especial
de base de datos que mantiene información en una estructura de
árbol. Functions\: ldap_add, ldap, bind, ldap_close, ldap_compare,
ldap_connect, ldap_delete, ldap_error, ldap_free_result,
ldap_get_values, ldap_list, ldap_read...

GeoIP / pecl La extensión GeoIP permite buscar la localicación de una dirección


IP (ciudad, país, estado, longitud, latitud, ISP, tipo de conexión...).
Functions\: geoip_continent_code_by_name,
geoip_country_code_by_name, geoip_database_info,
geoip_id_by_name, geoip_netspeedcell_by_name,
geoip_region_by_name, geoip_time_zone_by_country_and_region...

JSON / bundled Extensión que implementa el formato de intercambio de


datos JSON Javascript Object Notation JSON. Interface:
JsonSerializable. Functions:\ json_decode, json_encode,
json_last_error_msg, json_last_error...
Reflection / núcleo API de reflexión con capacidad para realizar ingeniería inversa de
clases, interfaces, funciones, métodos y extensiones. Ofrece
también formas de obtener comentarios de documentación de
funciones, clases y métodos. Clases: Reflection, ReflectionClass,
ReflectionExtension, ReflectionFunction, ReflectionMethod,
ReflectionProperty...

SPL / núcleo Biblioteca Estándar de PHP, Standard PHP Library, colección de


interfaces y clases pensadas para solucionar problemas comunes.
Estructuras de datos, Iteradores, Interfaces, Excepciones, Manejo
de ficheros. Functions\: class_implements, class_uses,
iterator_count, spl_autoload_register, spl_classes...

Tokenizer / núcleo Funciones que proporcionan una interfaz para la creación de


tokens de PHP. Con esta extensión, integrada en el Motor Zend, se
pueden escribir herramientas propias de análisis o de modificación
de código fuente de PHP sin tener que hacer frente a las
especificaciones del lenguaje a nivel léxico. Functions\:
token_get_all, token_name

URLs / núcleo Funciones para tratar con URLs: codificación, decodificación y


conversión. Functions\: get_headers, get_meta_tags, parse_url,
urldecode, urlencode...

Memcached / pecl Sistema de alto rendimiento para el almacenamiento de objetos en


caché de memoria distribuida, pensado para acelerar aplicaciones
web dinámicas aliviando la carga de bases de datos. Clases:
Memcached, MemcachedException

SSH2 / pecl Enlaza a la biblioteca libssh2 que provee acceso a recursos sobre


una máquina remota utilizando una vía de transporte criptográfica
segura. Functions\: ssh2_auth_agent, ssh2_auth_none,
ssh2_connect, ssh2_exec, ssh2_fingerprint, ssh2_scp_recv,
ssh2_sftp_mkdir, ssh2_sftp_rename, ssh2_sftp...
round()
Esta función nos permitirá hacer redondeo, osea recibirá como parámetro un número y si el valor
después del punto (o de la coma) es menor a 50 redondeará para abajo, de lo contrario lo hará un
número más:

<?php
$decimal = 1.49;
$decimal_redondeado = round($decimal);
echo $decimal_redondeado;
?>

floor()
Esta función también hará un redondeo pero siempre para abajo, osea que si tenemos esto:

<?php
$decimal = 1.50;
$decimal_redondeado = floor($decimal);
echo $decimal_redondeado;
?>
ceil()
Si en cambio queremos que el redondeo sea siempre para arriba deberíamos usar ceil():

<?php
$decimal = 1.50;
$decimal_redondeado = ceil($decimal);
echo $decimal_redondeado;
?>

rand()
La función rand() es una de las más útiles que hay. Esta función generará un número al azar que
irá desde un rango desde/hasta. Por ejemplo si quisiéramos devolver un número desde el 1 al 9
(inclusive):

<?php
$numero_al_azar = rand(1, 9);
echo $numero_al_azar;
?>

ucfirst()
En este caso, esta función sólo nos convertirá la primer letra de una cadena en mayúscula:
<?php
$palabra = 'fernando';
$nombre = ucfirst($palabra);
echo $nombre;
?>

REFERENCIAS BIBLIOGRÁFICAS
Aprendiendo PHP, parte 11: Funciones nativas – Fernando Gaitán ([Link])

IACC (2018). Funciones. Programación. Semana 4.

También podría gustarte