Posts Tagged ‘php’

Caracteres cirílicos en caracteres latinos en php

0

Para convertir un texto de cirílico a latino o viceversa, se puede hacer de la siguiente forma, que es bastante sencilla aunque no es seguro 100% (cosas del idioma)

$cyr  = array('а','б','в','г','д','e','ж','з','и','й','к','л','м','н','о','п','р','с','т','у', 'ф','х','ц','ч','ш','щ','ъ','ь','ю','я','А','Б','В','Г','Д','Е','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У', 'Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ь', 'Ю','Я' );
$lat = array( 'a','b','v','g','d','e','zh','z','i','y','k','l','m','n','o','p','r','s','t','u', 'f' ,'h' ,'ts' ,'ch','sh' ,'sht' ,'a' ,'y' ,'yu' ,'ya','A','B','V','G','D','E','Zh', 'Z','I','Y','K','L','M','N','O','P','R','S','T','U', 'F' ,'H' ,'Ts' ,'Ch','Sh' ,'Sht' ,'A' ,'Y' ,'Yu' ,'Ya' );
/*Variable que contiene el texto cirílico a latino*/
$cirilico_en_latino = str_replace($cyr, $lat, $cirilico);
/*Variable que contiene el texto latino a cirílico*/
$latino_en_cirilico = str_replace($lat, $cyr, $latino);
echo "$cirilico_en_latino $latino_en_cirilico";

 


Internacionalización i18n en CodeIgniter

6

Qué es lo que vamos a obtener en este tutorial?

Vamos a poder solventar tener  tu aplicación web o simplemente web en diferentes idiomas, con el siguiente formato.

  • dominio.com/es/
  • dominio.com/en/
  • dominio.com/cz/

Usaremos la clase Language de CodeIgniter y las librería ci_i18n_library de Maestric

Una vez que te descargues la librería ci_i18n_library, tienes que poner los archivos MY_Language.php y MY_Config.php en system/application/libraries

Configuración

Tienes que usar pretty URL, sin index.php. Si usas Apache, lo normal es que uses mod_rewrite en .htaccess

Aquí dejo un archivo .htaccess modificado para la ocasión

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} (index\.php|webroot/|images/|css/|js/|robots\.txt|favicon\.ico)
RewriteRule ^(images|css|files|js)/(.*)$ webroot/$1/$2 [L]
RewriteRule ^(favicon\.ico)$ webroot/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

En el archivo config.php tenemos que modificar:

$config['base_url'] que debe corresponder a tu configuración

$config['index_page'] = ”

 

En config/routes.php añadimos

// URI like '/en/test' -> use controller 'test'
$route['^es/(.+)$'] = "$1";
$route['^en/(.+)$'] = "$1";

// '/en' and '/es' URIs -> use default controller
$route['^es$'] = $route['default_controller'];
$route['^en$'] = $route['default_controller'];

 

Cómo usarlo?

Archivos de idioma

system/application/language/english/test_lang.php

<?php 
$lang['test_hello'] = "hello";

system/application/language/spanish/test_lang.php

<?php 
$lang['test_hello'] = "hola";

 

Controlador

system/application/controllers/test.php

<?php
class Test extends Controller {

	function index()
	{
		// Esto se podría poner en autoload
		$this->load->helper('language');
		$this->load->helper('url');

		// archivo de idioma
		$this->lang->load('test');

		$this->load->view('test');
	}
}

 

Vista

system/application/views/test.php

<p><?php echo lang('test_hello') ?></p>

 

Notas

Para obtener el idioma actual

$this->lang->lang();

 

Para cambiar de idioma

anchor($this->lang->switch_uri('en'),'English');

Página por defecto en CodeIgniter

0

Para asignar una página por defecto en tu instalación de CodeIgniter, es tan sencillo como ir a la carpeta config que se encuentra dentro de application y editar el archivo routes.php

En la línea 41 (si el archivo no ha sido modificado previamente) encontraréis $route['default_controller'] , donde tendréis que poner el controlador que queréis para que salga por defecto en vuestro dominio $route['default_controller'] = “controlador”

Este tutorial a sido muy básico, pero por algo se empieza.


CodeIgniter y SimplePie

0

Si quieres crear un readear RSS en CodeIgniter, SimplePie te lo pone bien fácil.

Aquí te explico un poco lo que tienes que hacer.

  1. Descargarte SimplePie
  2. Cambiar la extensión del archivo simplepie.inc a simplepie.php
  3. Mover el archivo simplepie.php a nuestro servidor en la ruta /application/libraries
  4. Cargar la librería en nuestro controlador
    $this->load->library('Simplepie');
  5. Añadir el siguiente código en nuestro controlador
    $this->simplepie->set_feed_url('http://www.tizonsoft.net/feed/');
    $this->simplepie->set_cache_location(APPPATH.'cache/rss');
    $this->simplepie->init();
    $this->simplepie->handle_content_type();
    $data['rss_feed'] = $this->simplepie->get_items();
  6. Añadir el siguiente código en nuestra vista
    <?php 
        foreach($rss_feed as $item) {
           echo '<a href="'.$item->get_link().'" target="_blank">'.$item->get_title().'</a>';
        } 
    ?>
  7. Listo para tener un reader funcionando con CodeIgniter y SimplePie

CodeIgniter Toolbox y tutoriales

0

CodeIgniter, uno de los miles frameworks de php, pero este se caracteriza por ser potente y ligero.

En la siguiente web, podrás obtener varios tutoriales, desde como empezar a trabajar con este maravilloso framework, hasta crear aplicaciones de facebook, cms o ecommerce.

Aquí el enlace


Post navigation