Artikel mit Tag scripts
Artikel mit Tag scripts
Ein Komplex aus einem integralen wie selektiven Desillusionator
Ein Komplex aus einem integralen wie selektiven Desillusionator
Artikel mit Tag scripts
Verwandte Tags
codeschnipsel
javascript
mysql
php
server
web
Donnerstag, 24. Juli 2008
Trim für Javascript
function
trim
(
zeichenkette
)
{
return
zeichenkette.
replace
(
/^\s+/
,
''
)
.
replace
(
/\s+$/
,
''
)
;
}
Geschrieben von
Alpha
um
14:08
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
codeschnipsel
,
javascript
,
scripts
,
web
Freitag, 22. Februar 2008
MySQL Tabellen optimieren per Cronjob und PHP CLI (mit PDO)
Cronjob Skript erstellen
vi /etc/cron.daily/optimize-tables
Folgendes anpassen und einfügen
#!/usr/bin/php
<?php
$host
=
'localhost'
;
$user
=
'user'
;
$password
=
'passwort'
;
$gain
=
$total_gain
=
$total
=
0
;
$verbose
=
true
;
try
{
$pdo
=
new
PDO
(
'mysql:host='
.
$host
,
$user
,
$password
)
;
//Datenbanken ermitteln
$data_base_query
=
$pdo
->
prepare
(
'SHOW DATABASES'
)
;
$data_base_query
->
execute
(
)
;
foreach
(
$data_base_query
->
fetchAll
(
PDO::
FETCH_OBJ
)
as
$data_base_obj
)
{
$data_base
=
$data_base_obj
->
Database
;
if
(
$verbose
)
echo
'Aktuelle Datenbank: '
.
$data_base
. PHP_EOL;
$pdo
->
exec
(
'USE '
.
$data_base
)
;
//Tabellen ermitteln
$table_query
=
$pdo
->
prepare
(
'SHOW TABLE STATUS'
)
;
if
(
is_object
(
$table_query
)
)
{
$table_query
->
execute
(
)
;
foreach
(
$table_query
->
fetchAll
(
PDO::
FETCH_OBJ
)
as
$table
)
{
$total
=
round
(
(
$table
->
Data_length
+
$table
->
Index_length
)
/
1024
,
3
)
;
$gain
=
$table
->
Data_free
/
1024
;
$total_gain
+=
$gain
;
$gain
=
round
(
$gain
,
3
)
;
if
(
$verbose
)
echo
'Optimiere Tabelle: '
.
$table
->
Name
.
'(Groesse: '
.
$total
.
' KB, Ueberhang: '
.
$gain
.
'KB)'
. PHP_EOL;
$optimize_query
=
$pdo
->
prepare
(
'OPTIMIZE TABLE '
.
$table
->
Name
)
;
if
(
is_object
(
$optimize_query
)
)
{
$optimize_query
->
execute
(
)
;
}
else
{
if
(
$verbose
)
echo
'Tabelle: '
.
$table
->
Name
.
' konnte nicht optimiert werden'
. PHP_EOL;
}
}
}
else
{
if
(
$verbose
)
echo
'Konnte die Tabellen von '
.
$data_base
.
' nicht ermitteln. '
. PHP_EOL;
}
if
(
$verbose
)
echo
PHP_EOL;
}
if
(
$verbose
)
echo
PHP_EOL;
if
(
$verbose
)
echo
'Insgesamter Ueberhang: '
.
$total_gain
.
'KB'
. PHP_EOL;
}
catch
(
PDOException
$e
)
{
if
(
$verbose
)
echo
$e
->
getMessage
(
)
;
}
?>
ausführbar machen
chmod +x /etc/cron.daily/optimize-tables
Geschrieben von
Alpha
um
11:09
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
mysql
,
php
,
scripts
,
server
Donnerstag, 21. Februar 2008
Simpler Klassen Autoload mit SPL
<?php
function
mein_autoload
(
$class_name
)
{
if
(
is_file
(
'class/'
.
$class_name
.
'.class.php'
)
)
{
require_once
'class/'
.
$class_name
.
'.class.php'
;
}
else
{
throw
new
Exception
(
'Konnte die Klasse
\'
'
.
$class_name
.
'.class.php'
.
'
\'
nicht öffnen'
)
;
}
}
spl_autoload_register
(
'mein_autoload'
)
;
?>
Geschrieben von
Alpha
um
07:14
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
codeschnipsel
,
php
,
scripts
,
web
Mittwoch, 20. Februar 2008
Array sortieren und Umlaute + Reihenfolge beachten.
<?php
function
make_sort_function
(
$field
)
{
$from
=
"array('Ü', 'ü', 'Ö', 'ö', 'Ä', 'ä', 'ß',
'&Uumml', 'ü', 'Ö', 'ö',
'Ä', 'ä', 'ß')"
;
$to
=
"array('Ue', 'ue', 'Oe', 'oe', 'Ae', 'ae', 'ss', 'Ue',
'ue', 'Oe', 'oe', 'Ae', 'ae', 'ss')"
;
$code
=
"
\$
a = str_replace($from, $to,
\$
a['$field']);
\n
"
;
$code
.=
"
\$
b = str_replace($from, $to,
\$
b['$field']);
\n
"
;
$code
.=
"if (
\$
a ==
\$
b) return 1;"
;
$code
.=
"return strnatcmp(
\$
a,
\$
b);"
;
return
create_function
(
'$a,$b'
,
$code
)
;
}
function
sort_array
(
$array
,
$order
= SORT_ASC
)
{
$from
=
"array('Ü', 'ü', 'Ö', 'ö', 'Ä', 'ä', 'ß',
'&Uumml', 'ü', 'Ö', 'ö',
'Ä', 'ä', 'ß')"
;
$to
=
"array('Ue', 'ue', 'Oe', 'oe', 'Ae', 'ae', 'ss', 'Ue',
'ue', 'Oe', 'oe', 'Ae', 'ae', 'ss')"
;
$code
=
"
\$
a = str_replace($from, $to,
\$
a);
\n
"
;
$code
.=
"
\$
b = str_replace($from, $to,
\$
b);
\n
"
;
$code
.=
"if (
\$
a ==
\$
b) return 1;"
;
$code
.=
"return strnatcmp(
\$
a,
\$
b);"
;
$function
=
create_function
(
'$a,$b'
,
$code
)
;
uasort
(
$array
,
$function
)
;
if
(
$order
!= SORT_ASC
)
{
return
array_reverse
(
$array
,
true
)
;
}
else
{
return
$array
;
}
}
function
sort_array_by_field
(
$array
,
$field
,
$order
= SORT_ASC
)
{
$function
= make_sort_function
(
$field
)
;
uasort
(
$array
,
$function
)
;
if
(
$order
!= SORT_ASC
)
{
return
array_reverse
(
$array
,
true
)
;
}
else
{
return
$array
;
}
}
?>
Geschrieben von
Alpha
um
13:59
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
codeschnipsel
,
php
,
scripts
,
web
str_replace für Javascript
function
str_replace
(
search, replace, subject
)
{
var
result =
""
;
var
oldi =
0
;
for
(
i = subject.
indexOf
(
search
)
; i > -
1
; i = subject.
indexOf
(
search, i
)
)
{
result += subject.
substring
(
oldi, i
)
;
result += replace;
i += search.
length
;
oldi = i;
}
return
result + subject.
substring
(
oldi, subject.
length
)
;
}
Geschrieben von
Alpha
um
13:44
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
codeschnipsel
,
javascript
,
scripts
,
web
in_array für Javascript
Ist ziemlich simpel, kann natürlich auch jeder selbst schreiben, aber die Bequemen kopieren es sich:
function
in_array
(
item
,arr
)
{
for
(
p=
0
;p<arr.
length
;p++
)
if
(
item
== arr
[
p
]
)
return
true
;
return
false
;
}
Gefunden auf:
Dodwin's Blog
Geschrieben von
Alpha
um
13:40
|
Kommentare (0)
|
Trackbacks (0)
Tags für diesen Artikel:
codeschnipsel
,
javascript
,
scripts
,
web
Gewählte Optionen eines Multiple Select Menus per Javascript ermitteln
function
get_options
(
select_menu
)
{
array_selected =
new
Array
(
)
;
for
(
var
i =
0
; i < select_menu.
options
.
length
; i++
)
{
if
(
select_menu.
options
[
i
]
.