【PHP】usortのfunctionでCannot redeclare(再定義)される

公開日: : 最終更新日:2014/08/14 PHP

スポンサーリンク

初心者なのでusortがいいものかどうなのかよくわからないのですが、usortの関数定義をするとたまに『Cannot redeclare~』という関数再定義のエラーがでます。

例えば↓こういったソートしたい配列を引数とした関数を作って実行するとエラーになるときがあります。

public function sortData($ary)
{
	function cmp($a,$b)
	{
		return ($a < $b);
	}
	usort($ary,"cmp");
	return $ary;
}

こういうときは『function_exists』という関数で関数の有無を確認できるのでそれで宣言するかどうかを判別するのがいいそうです。

public function sortData($ary)
{
	if (!function_exists("cmp")) {
		function cmp($a,$b)
		{
			return ($a < $b);
		}
	}
	usort($ary,"cmp");
	return $ary;
}
スポンサーリンク
Amazon
  • このエントリーをはてなブックマークに追加

関連記事

mailsendtest

【PHP】file_get_contentsでリンク元などのヘッダ情報を変更する

file_get_contentsで他サイトの情報を読み取る際などでリンク元を明記したい場合は以下の

記事を読む

PAK85_seijinsikikeitai20140113500-thumb-500xauto-4104

スクレイピングをサポートしてくれるAPI【kimono】

kimonoというスクレイピングをAPI化してくれるという素晴らしいサービスがあります。

記事を読む

encodingtype

【PHP】headerでContent-Typeを指定したのに効かない場合の対処法

PHPでサイトマップを作ろうと思い、XML形式のファイルを出力しようとしてheaderを指定したのに

記事を読む

api

【PHP】WebAPIのJSONファイルを読み込む

WebAPIでJSONファイルを使う機会があったので使い方をメモ。最近ではWebAPIはSNSやブロ

記事を読む

twittersearch

【twitteroauth】TwitterAPIで検索して特定のつぶやきをしたユーザーを取得する方法【PHP】

twitteroauthを利用してワード検索して特定のつぶやきをしたユーザーを取得する方法です。tw

記事を読む

source_php

【PHP】ミリ秒を取得することで制限時間を設けて処理をする

PHPで時間制限を設けてタイマーのような処理をするときの制限の付け方として、処理のはじめの時刻と処理

記事を読む

PAK86_atamakakaerujyosei20140125500-thumb-500xauto-4730

【MySQL・PHP】WHERE句とORDER BY句を使った#1064エラーについて

MySQLで次のようなクエリを出すとエラーとなって帰ってきました。 SELECT * from

記事を読む

8999371750_ee7e782a16_m

【CakePHP3】無関係な複数テーブルのデータを一つのコントローラで扱う

CakePHP3で一つのコントローラないでお互い独立したテーブルを扱うには単純にTableRegis

記事を読む

twitterimage

TwitterAPIでデベロッパー登録しようとすると携帯情報を追加しろと出る件について

TwitterAPIのデベロッパー登録ページ(https://dev.twitter.com)でアプ

記事を読む

source_php

【PHP】Simple HTML DOM Parserを使って属性の値を取得する

PHPでSimple HTML DOM Parserを使ったスクレイピングで指定の属性の値を取得する

記事を読む

encodingtype
【PHP】headerでContent-Typeを指定したのに効かない場合の対処法

PHPでサイトマップを作ろうと思い、XML形式のファイルを出力しようと

_rtm0919_tp_v
スマホ向け幅固定サイトの回転時の幅対応方法

幅固定サイトでのスマホ回転時Webサイトの横幅を合わせる方法のメモ。

rssimage
【PHP】特定のURLからそのAtomやRSSのフィードを抽出する方法

特定のURLからRSSやATOMのフィードを抽出する方法をメモ。 流

rssimage
フィード抽出ツール(RSS1.0、RSS2.0、atom)

任意URL サイト名 サイトURL RSS1.0

computer_server
格安プラン限定レンタルサーバー機能比較表(2016年)

はじめに  最近新しい共用サーバーをレンタルしようと思い調査およびそ

school_toshokan_hondana
kindle unlimitedが便利だったのでお勧めの使い方など感想メモ

 kindle unlimitedというサービスが8/3からAmazo

TAKEBE055122558_TP_V
寝る前にスマホを見ると斜視になる可能性とその対策

はじめに  寝る前などスマホを横になりながら見続けると斜視になる可能

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑