PHP vs. Ruby

PHP vs. Ruby

PHP dan Ruby adalah bahasa skrip sisi pelayan - yang paling biasa digunakan untuk membangunkan laman web.

Carta Perbandingan

Perbezaan - Persamaan - Carta perbandingan php berbanding ruby
PhpRuby
  • Penarafan semasa ialah 3.66/5
  • 1
  • 2
  • 3
  • 4
  • 5
(114 penilaian)
  • Penarafan semasa ialah 3.46/5
  • 1
  • 2
  • 3
  • 4
  • 5
(103 penilaian)
Blok komen pematuhan / * dan */ = bermula dan = akhir; juga sebarang teks selepas __end__
Terminator Penyata Titik koma ditamatkan Newline ditamatkan
Arrays dinamik bersaiz Ya Ya
Comments Inline Delimiter // dan # #
Kelas Ya Ya
Operator Concatenation String . (titik) + (tanda tambah)
Paradigma pengaturcaraan penting, berorientasikan objek, reflektif Imperatif, berorientasikan objek, reflektif, berorientasikan aspek, berfungsi
OOP (pengaturcaraan berorientasikan objek) Ya, warisan tunggal. Ya, tetapi anda tidak perlu.
Susunan pelbagai dimensi disokong Ya Ya
Akses elemen array $ array [i] Array [i]
Jenis pemeriksaan Dinamik Dinamik
Sintaks untuk panjang tali strlen ($ string) tali.saiz atau rentetan.panjang
Kutipan sampah Ya Ya
Operasi vektor Ya Ya
Sintaks perbandingan rentetan strcmp ($ string1, $ string2) String1 String2
Sintaks ujian persamaan rentetan $ string1 == $ string2 string1 == string2
Menaip Taip lemah Sangat ditaip
Sintaks carian rentetan strpos ($ string, $ substring [, startpos]) mengembalikan palsu jika item carian ($ substring) tidak dijumpai tali.indeks (substring [, startpos]) mengembalikan nil jika item carian (substring) tidak dijumpai
Sintaks pemformatan string sprintf (formatstring, item) sprintf (formatstring, item)
Sintaks untuk menyertai pelbagai rentetan implode (pemisah, array_of_strings) array_of_strings.Sertailah (pemisah)
Sintaks untuk substring substr (rentetan, startpos, numchars) String [startpos, numchars]
Sintaks untuk carian dan ganti dalam rentetan str_replace ($ cari, $ ganti, $ string) tali.gsub (cari, ganti)
Digunakan Aplikasi Web, CLI Aplikasi, skrip
Sintaks untuk membalikkan rentetan Strrev ($ String) tali.terbalik
Matlamat reka bentuk bahasa Keteguhan dan kesederhanaan Ekspresi, kebolehbacaan
Sintaks untuk menukarkan rentetan ke atas strtoupper ($ string) tali.upcase
Contoh penggunaan WordPress, Wikipedia Indiegogo, Hulu

Arahan bersekutu di PHP vs. Ruby

Php

Jenis array terbina dalam PHP sebenarnya adalah array bersekutu. Walaupun menggunakan indeks berangka, PHP secara dalaman menyimpannya sebagai array bersekutu. Inilah sebabnya mengapa satu di PHP boleh mempunyai array yang diindeks secara beransur-ansur. Kekunci mesti menjadi nilai skalar (rentetan, nombor titik terapung atau integer), sementara nilai boleh menjadi jenis sewenang -wenangnya, termasuk tatasusunan dan objek lain. Array adalah heterogen; Arahan tunggal boleh mempunyai kunci pelbagai jenis. Array bersekutu PHP boleh digunakan untuk mewakili pokok, senarai, susunan, barisan dan struktur data biasa lain yang tidak dibina dalam PHP.

Dalam PHP, pelbagai bersekutu boleh dibentuk dalam salah satu daripada dua cara:

$ phoneBook = array (); $ phoneBook ['Sally Smart'] = '555-9999'; $ phoneBook ['John Doe'] = '555-1212'; $ Buku Telefon ['J. Peretas rawak '] =' 555-1337 '; // atau $ phoneBook = Array ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Rawak hacker '=>' 555-1337 ',); // atau $ Buku Telefon ['Kenalan'] ['Sally Smart'] ['Number'] = '555-9999'; $ phoneBook ['Contacts'] ['John Doe'] ['Number'] = '555-1212'; $ Buku Telefon ['Kenalan'] ['J. Peretas rawak '] [' nombor '] =' 555-1337 '; 

Anda juga boleh gelung melalui array bersekutu dalam PHP seperti berikut:

foreach ($ phone book as $ name => $ number) echo "nombor untuk $ name: $ number \ n";  
// Untuk contoh array terakhir ia digunakan seperti foreach ini ($ phoneBook ['contacts'] sebagai $ name => $ num) echo "name: $ name"; echo "nombor: $ num ['number']";  

PHP mempunyai satu set fungsi yang luas untuk beroperasi pada tatasusunan.

Ruby

Di Ruby, array bersekutu dipanggil hash dan digunakan seperti berikut:

Buku Telefon = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Penggodam rawak '=>' 553-1337 ' 

Buku Telefon ['John Doe'] menghasilkan '555-1212'

Untuk melelehkan hash, gunakan sesuatu seperti yang berikut:

buku telefon.setiap | kunci, nilai | meletakkan kunci + "=>" + nilai 

Di samping itu, setiap kunci boleh ditunjukkan secara individu:

buku telefon.setiap_key | key | meletakkan kunci 

Setiap nilai juga boleh ditunjukkan:

buku telefon.setiap_value | value | meletakkan nilai