PHPに投稿されたコード一覧

PHP 自身のIPアドレスとドメイン名を返す

<?php
    $ip = $_SERVER["REMOTE_ADDR"];
    $host = gethostbyaddr($ip);
    print "${host}(${ip})";
?>

PHP 自身のIPアドレスとドメイン名を返す

<?php
    $ip = $_SERVER["REMOTE_ADDR"];
    $host = gethostbyaddr($ip);
    print "${host}(${ip})";
?>

PHP 過去ログツイートのテスト

require_once 'tmhOAuth.php';
function tweetPost(){

if($_GET['tweet'] == 1){ //追加:http://example.com?tweet=1 とアクセスした時に実行するように

    //トークンなどの設定
    $tmhOAuth  = new tmhOAuth(array(
        "consumer_key" => 'カスタマーキー',
        "consumer_secret" => 'カスタマーシークレット',
        "user_token" => 'アクセストークン',
        "user_secret" => 'アクセストークンシークレット',
        'curl_ssl_verifypeer' => false //SSL対応に必要
    ));

    //ツイートする記事の取得
    //いつものget_postsなので、ここでツイートしたい記事の条件をいろいろ指定できる。
    $post = get_posts(array(
        'numberposts' => 1,
        'orderby' => 'rand'
    ));

    //ツイートするテキスト(字数は定型文やハッシュタグを使う場合は適宜調整が必要)
    //以下の例は本文とURLをツイートするものですが、もちろんpost_titleも可です。
    $params = array(
        'status' => mb_strimwidth('【過去記事】'.strip_tags($post[0]->post_content), 0, 116, "...") . ' ' . get_permalink($post[0]->ID)
    );

    //ツイートする処理
    $code = $tmhOAuth->request(
        'POST',
        'https://api.twitter.com/1.1/statuses/update.json',
        $params,
        true,
        true
    );

    /*アイキャッチを添付画像にしてツイートしたい場合は以下のようになります
        $file = wp_get_attachment_image_src( get_post_thumbnail_id($post[0]->ID), 'full' );
        $file = $file[0];
        $image = file_get_contents( $file );
        $imagesize = getimagesize( $file );

        $params = array(
            'status' =>  mb_strimwidth('【過去記事】'.strip_tags($post[0]->post_content), 0, 116, "...") . ' ' . get_permalink($post[0]->ID),
            'media[]' => $image . ";type=" . $imagesize['mime'] . ";filename=" . basename( $file )
        );

        //URLが違うことに注意
        $code = $tmhOAuth->request(
            'POST',
            'https://api.twitter.com/1.1/statuses/update_with_media.json',
            $params,
            true,
            true
        );
    */
} //追加:if文の終わり
}

add_action('wp_head','tweetPost');  //追加:header読み込み時に上記アクションを実行(initだとGETが取れない)

PHP test

<?php
	var_dump($hogehoge);
?>

PHP wordpressで指定のアクションまたはフィルターにフックされている関数の優先度を取得

/**
* 指定のアクションまたはフィルターにフックされている関数の優先度を取得
* @param $filter
* @param $name
* @return int
*/
function get_hook_priority($filter, $name) {
	global $wp_filter;
	foreach ($wp_filter[$filter] as $priority => $hooks) {
		foreach ($hooks as $hook_name => $hook_content) {
			if($name == $hook_name) return $priority;
		}
	}
}

PHP テスト

$request_token_url = "http://api.twitter.com/oauth/request_token";
$access_token_url = "http://api.twitter.com/oauth/access_token";
$authorize_url = "http://api.twitter.com/oauth/authenticate";

PHP HABTMとチェックボックスのchecked属性 [CakePHP 2]

// ビュー
$this->Form->input('Habtm', ['multiple' => 'checkbox']);

// コントローラ
if (isset($this->request->data['Habtm']['Habtm'][0])) {
	$this->request->data['Habtm'] = array_map(function ($id) {
		return ['id' => (int)$id];
	}, $this->request->data['Habtm']['Habtm']);
}

PHP 特定ユーザーのみに記事を閲覧させる&既読かどうかをチェックボックスで判定

<?php
	if(user_logged_in()){
	/*
	記事投稿時に「userid」というカスタムフィールドに見せたいユーザーのIDを入力しておきます。
	*/

	//ログイン中のユーザーのIDを取得
	global $user_ID;
	get_currentuserinfo();

	//カスタムフィールド「userid」がログイン中のユーザーのIDのものだけを取得
	//これでログイン中の場合、自分のIDとして設定された記事のみが表示されます。
	$arg = array(
		'meta_key' => 'userid',
		'meta_value' => $user_ID
	);
	query_posts($arg);
?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

	<?php
		//記事を見たかどうかの処理は記事のカスタムフィールドに閲覧済みかどうかで値を持たせる
		//この例では記事のカスタムフィールド「read」が「1」ならば閲覧済みとする

		//POSTで「read」というキーが送られたときにカスタムフィールドに「read=1」を追加する
		if($_POST['read'] == '1' && wp_verify_nonce($_REQUEST['_wpnonce'],'nonce')){
			//ひょっとしたら$post->IDがとれないかもしれないので実際に設置して確認してみてください。
			add_post_meta($post->ID,'read',1);
		}

	?>
	<form action="./" method="post">
		<!-- 実装時はCSRFなどに注意してください -->
		<input type="hidden" name="_wpnonce" value="<?php echo wp_create_nonce('nonce'); ?>" />
		<input type="checkbox" name="read" value="1" />
		<input type="submit" value="この記事を確認しました" />
	</form>

	<!-- あとは通常のループと同様にthe_title()やthe_content()で記事の内容を出力 -->
	<?php the_title(); ?>
	<?php the_content(); ?>

<?php endwhile; else: ?>
<?php endif; ?>

<?php } else {
	//非ログインユーザー向けの表示
	echo 'ログインしてください。';
} ?>

PHP PHPでの処理時間計測

<?php
$for_start_time = array();
$for_end_time = array();
for ($i = 0; $i < 100; $i++) {
	$for_start_time[i] = microtime(true);
	for ($j = 0; $j < 100000; $j++) {
	}
	$for_end_time[i] = microtime(true);
}
$for_time = 0;
for ($i = 0; $i < 100; $i++) {
	$for_time += $for_end_time[i] - $for_start_time[i];
}
$for_time = $for_time / 100;
echo 'for文を回すのにかかった時間<br />';
echo $for_time . '秒<br />';

///////////////////////////////////////////////////////////////////////////////

$n = 1;
$x = 0;

$start_time = microtime(true);
for ($i = 0; $i < 100000; $i++) {

	/*
	// 0.011146068572998秒
	switch ( $n )
	{
	case 1:
		$x = 10;
		break;
	case 2:
		$x = 20;
		break;
	case 3:
		$x = 30;
		break;
	default:
		$x = 99;
		break;
	}
	*/

	/*
	// 0.015251874923706秒
	$x = ( $n == 1 ) ? 10:
	     ( $n == 2 ) ? 20:
	     ( $n == 3 ) ? 30:
	                   99;
	*/

}
$end_time = microtime(true);
echo '処理時間<br />';
echo $end_time - $start_time . '秒';
?>

PHP タクソノミー一括追加

$labels = array(
'北海道' => '北海道',
'青森県' => '青森県',
'岩手県' => '岩手県',
'宮城県' => '宮城県',
'秋田県' => '秋田県',
'山形県' => '山形県',
'福島県' => '福島県',
'東京都' => '東京都',
'神奈川県' => '神奈川県',
'埼玉県' => '埼玉県',
'千葉県' => '千葉県',
'茨城県' => '茨城県',
'栃木県' => '栃木県',
'群馬県' => '群馬県',
'山梨県' => '山梨県',
'新潟県' => '新潟県',
'長野県' => '長野県',
'富山県' => '富山県',
'石川県' => '石川県',
'福井県' => '福井県',
'愛知県' => '愛知県',
'岐阜県' => '岐阜県',
'静岡県' => '静岡県',
'三重県' => '三重県',
'大阪府' => '大阪府',
'兵庫県' => '兵庫県',
'京都府' => '京都府',
'滋賀県' => '滋賀県',
'奈良県' => '奈良県',
'和歌山県' => '和歌山県',
'鳥取県' => '鳥取県',
'島根県' => '島根県',
'岡山県' => '岡山県',
'広島県' => '広島県',
'山口県' => '山口県',
'徳島県' => '徳島県',
'香川県' => '香川県',
'愛媛県' => '愛媛県',
'高知県' => '高知県',
'福岡県' => '福岡県',
'佐賀県' => '佐賀県',
'長崎県' => '長崎県',
'熊本県' => '熊本県',
'大分県' => '大分県',
'宮崎県' => '宮崎県',
'鹿児島県' => '鹿児島県',
'沖縄県' => '沖縄県'
);

foreach ( $labels as $slug => $name ) {
6	    if ( ! term_exists( $slug, 'post_type' ) ) {
7	        wp_insert_term( $name, 'shopareas', array( 'slug' => $slug ) );
8	    }
9}
Total Pages: 1 / 612345...最後 »

よく投稿されているコード

タグ

最近投稿されたコード