LoginSignup
2

More than 5 years have passed since last update.

PHPとRubyは比較して覚えよう

Last updated at Posted at 2018-07-25

書きたいと思ったきっかけ

仕事では、もっぱらPHPなのですが、Rubyが気になり、勉強がてら比較した記録を書いてみました。
ネット・ツイッター見てるとRuby使いの方々多く、ミーハーな私は使いたくなってしまいます。

この記事の用途

用途としては、PHPとRubyの雰囲気(重要)をおおざっぱに掴んで、各言語の学習のきっかけになれば幸いです。
各言語の雰囲気を楽しんでください。

いいわけ使用上の注意

Ruby初心者です。
PHP同様おそらくRubyにもいろいろな書き方があり、こういう書き方があるよとか抜けているよとか違っているよとかあるかもしれませんが、どうか温かい目で見てみてください。

感想

Rubyの情報は新旧合わせ、たくさんあり、ひとつ絞りづらく取捨選択が大変なので新しい本を一冊買って写経しようかなと思いました。


コメント

php

// comment

ruby

# comment

変数定義

php

$hoge = 1;

ruby

hoge = 1

変数出力

php

echo $hoge;

ruby
puts hoge

配列定義

php

$array = ['hoge', 'fuga', 'piyo'];

ruby

array = ['hoge', 'fuga', 'piyo']

phpでいうと連想配列定義(Rubyでいうとハッシュ)


$array = [
    'hoge' => 'hoge',
    'fuga' => 'fuga',
    'piyo' => 'piyo'
];


hash = {
    'hoge' => 'hoge',
    'fuga' => 'fuga',
    'piyo' => 'piyo'    
}

配列操作

php

foreach ($array as $value) {
    echo $value;
}

ruby

array.each do |value|
    puts value
end

if文


if (true) {
    echo 'true';
} else {
    echo 'false';
}


if true
    puts 'true'
else
    puts 'false'
end

クラス・メソッド

php

class Hoge
{
    public $hoge = 'hoge';

    public function displayHoge () {
        echo $this->hoge;
    }
}

ruby

class Hoge

    def initialize
        @hoge = 'hoge'
    end

    def displayHoge
        puts @hoge
    end

参考サイト

PHP マニュアル

オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル

TASK NOTES 【Ruby】条件分岐について (if, unless, case, 三項演算子)

[PHP, Ruby] ハッシュに対するいろいろなMap

PHPのアレはRubyで書くとコレ

ChefTips: RubyのArray(配列)とHash(連想配列)入門

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2