css_encode(bla)
He hecho una pequeña función en PHP que lo que hace es dejaros crear variables para los colores y demás, algo bastante necesario en CSS pero que aún no tienen, aunque deberían, aquí tenéis el código y abajo cómo usarlo, dad ideas por si se puede mejorar, ¡saludos!
Para poner una línea de estilos para un elemento después de las funciones o llamándolas con require, habría que poner lo siguiente:
Explico:
Creamos una variable que contenga el array que conformará los estilos de todo el elemento al que vayamos a seleccionar, en este caso he llamado a body para que sea más fácil de entender.
Después añadiremos la llamada a la función css_encode que tiene la sintaxis:
css_encode('nombre del elemento a llamar', $variable_de_estilos, CSS_PRETTY_PRINT);
Otra cosa es que queráis que los estilos estén compactados, para que aparte de que pese menos, haya menos probabilidades de que te "roben" código y es cambiando CSS_PRETTY_PRINT por CSS_OBFUSCATE_PRINT.
El talón de aquiles de la función es que al crear la variable con el array de los estilos, en el valor de una propiedad tienes que añadir tú el punto y coma para separar las sentencias, porque sino no te salen, y para poner una coma para crear valores tipo: Arial, verdana, tahoma, tienes que poner en lugar de la coma, un '|'.
Me gustaría saber también si hay forma de hacer que se acabase el bucle de reemplazar, porque esta función css_encode se aprovecha de la sintaxis de json_encode, y bueno, esto es todo, ¡nos vemos!
He hecho una pequeña función en PHP que lo que hace es dejaros crear variables para los colores y demás, algo bastante necesario en CSS pero que aún no tienen, aunque deberían, aquí tenéis el código y abajo cómo usarlo, dad ideas por si se puede mejorar, ¡saludos!
Código (php) [Seleccionar]
<?php
// Declaracion del tipo de contenido.
header('Content-Type: text/css');
// Funcion de 'css_encode'.
const CSS_PRETTY_PRINT = JSON_PRETTY_PRINT;
const CSS_OBFUSCATE_PRINT = null;
function css_encode($selector, $css, $option) {
if($option == CSS_PRETTY_PRINT) {
// Limpiar espacios vacíos del selector.
$selector = trim($selector);
// Similitud a un codigo CSS con 'json_encode'.
$css = json_encode($css, CSS_PRETTY_PRINT);
// Reemplaza las comillas por un valor nulo.
$css = str_replace('"', '', $css);
// Reemplaza las comas por puntos y comas.
$css = str_replace(',', '', $css);
$css = str_replace('|', ',', $css);
// Muestra en pantalla el valor del resultado.
echo "$selector $css\n\n";
}
else if($option == CSS_OBFUSCATE_PRINT) {
// Limpiar espacios vacios del selector.
$selector = trim($selector);
// Similitud a un codigo CSS con 'json_encode'.
$css = json_encode($css);
// Reemplaza las comillas por un valor nulo.
$css = str_replace('"', '', $css);
// Reemplaza las comas por puntos y comas.
$css = str_replace(',', '', $css);
$css = str_replace('|', ',', $css);
// Muestra en pantalla el valor del resultado.
echo $selector.$css;
}
else if($option == null) {
$error_descriptions[E_WARNING] = "Debes indicar el formato de salida del codigo.";
echo $error_descriptions[2];
}
}
// Funcion variante de comentarios.
function css_encode_apks8($c) {
echo "/* $c */\n";
}
?>
Para poner una línea de estilos para un elemento después de las funciones o llamándolas con require, habría que poner lo siguiente:
Código (php) [Seleccionar]
$body =
[
'background-color' => '#fff;',
'color' => '#000;'
];
css_encode_apks8("Comentario");
css_encode('contenido', $body, CSS_PRETTY_PRINT);
Explico:
Creamos una variable que contenga el array que conformará los estilos de todo el elemento al que vayamos a seleccionar, en este caso he llamado a body para que sea más fácil de entender.
Después añadiremos la llamada a la función css_encode que tiene la sintaxis:
css_encode('nombre del elemento a llamar', $variable_de_estilos, CSS_PRETTY_PRINT);
Otra cosa es que queráis que los estilos estén compactados, para que aparte de que pese menos, haya menos probabilidades de que te "roben" código y es cambiando CSS_PRETTY_PRINT por CSS_OBFUSCATE_PRINT.
El talón de aquiles de la función es que al crear la variable con el array de los estilos, en el valor de una propiedad tienes que añadir tú el punto y coma para separar las sentencias, porque sino no te salen, y para poner una coma para crear valores tipo: Arial, verdana, tahoma, tienes que poner en lugar de la coma, un '|'.
Me gustaría saber también si hay forma de hacer que se acabase el bucle de reemplazar, porque esta función css_encode se aprovecha de la sintaxis de json_encode, y bueno, esto es todo, ¡nos vemos!